当前位置: 首页 > news >正文

如何写 commit message?

前言

每次写 commit message 时,都会纠结用什么动词,格式应该什么样,所以决定总结一下。

查了一下,还是挺复杂的。因为只面向我个人日常使用,所以只进行一些简单的、适合我的总结。

正文

message 分为两部分,type 和 subject。

1)type

用于说明 commit 的类别,只允许使用下面 7 个标识。

  • feat:新功能,为用户添加新的特性或功能(不包括构建脚本的新功能,像是 Dockerfile、环境配置、CI/CD 配置文件等)。
    示例:添加用户登录功能。
  • fix:修复用户遇到的 bug(不包括构建脚本的修复)。
    示例:修复用户界面显示错误。
  • docs:文档变更,如更新 README、API 文档或注释。
    示例:添加项目安装指南。
  • style:代码格式化或样式调整,不影响功能(例如缩进、加分号)。
    示例:统一代码缩进为 2 个空格。
  • refactor:重构生产代码,优化结构但不更改功能(例如重命名变量)。
    示例:将函数名从 getData 改为 fetchData。
  • test:添加或重构测试代码,不影响生产代码。
    示例:为登录功能添加单元测试。
  • chore:杂项任务,如更新构建工具、依赖或配置,不影响生产代码。
    示例:修改 Dockerfile。

另外注意不要大写开头字母。

2)subject

是 commit 目的的简短描述,不超过50个字符。有以下几个注意点:

  • 以动词开头,使用第一人称现在时,比如 change,而不是 changed 或 changes;
  • 第一个字母小写;
  • 结尾不加句号(.)。

示例(日常积累)

  • docs: add notes for Redis Application Chapter 1
  • chore: update .gitignore to include .ipynb_checkpoints
  • chore: remove redundant .ipynb_checkpoints folder

参考

  1. Commit message 和 Change log 编写指南
  2. vue-lib contribution guidelines
http://www.xdnf.cn/news/39961.html

相关文章:

  • 细说STM32单片机FreeRTOS中断管理及其应用方法
  • 深入浅出伯努利分布:从 0‑1 随机世界到统计学习基石
  • 服务部署丨通过Docker部署AutoBangumi+qBittorrent实现自动追番
  • 云服务器性价比测评:Intel vs AMD vs Graviton
  • YuE本地部署完整教程,可用于ai生成音乐,歌曲
  • 老婆是用来爱的,不是用来吼的
  • CAN与CANFD协议说明
  • [Java · 初窥门径] Java API 文档使用说明
  • Python实例题:神经网络实现人脸识别任务
  • 离线安装elasticdump并导入和导出数据
  • 深度补全网络:如CSPN++填补稀疏点云的深度信息
  • 运筹学之遗传算法
  • 2024期刊综述论文 Knowledge Graphs and Semantic Web Tools in Cyber Threat Intelligence
  • SICAR标准功能块 FB1514 “Robot_request_FB”
  • 洛谷的几道题(2)
  • 解决win10执行批处理报编码错误
  • 【双指针】对撞指针 快慢指针 移动零
  • 文献×材料 | 基于ANSYS的刹车片环保材料分析研究
  • C 语 言 --- 指 针 3
  • IsaacSim Asserts 配置
  • [Java]反射、String类补充
  • Workflow轻量级工作流引擎实现
  • 5. 话题通信 ---- 发布方和订阅方python文件编写
  • 前端面试中高频手撕[待补充]
  • STM32单片机教程:从零开始打造智能天气时钟
  • 【技术追踪】用于医学图像分割的 Diffusion Transformer U-Net(MICCAI-2023)
  • 裂项法、分式分解法——复杂分式的拆解
  • AIGC-几款市场营销智能体完整指令直接用(DeepSeek,豆包,千问,Kimi,GPT)
  • QTcpSocket多线程遇到的读写数据问题
  • win11自带中文输入法不见了怎么解决