书写良好的 Git 提交信息

Catalogue

在使用 Git 的过程中,可以发现 Git 是会强制每次提交都要写提交消息(commit message)的,这也算是 Linus 的良好编程习惯的体现。准确恰当的提交信息对于回溯项目开发历程、寻找特定功能的代码片段等等,都很有帮助。

真正到了要写提交信息的时候,很多人可能会图省事,使用 ...,或者 abc 这养的内容蒙混过去。这可不是什么好习惯。Git 的提交信息应该简明扼要,描述当前提交所做的主要的事情。可以使用一些可以描述所做改动的关键词作为前缀然后书写详细的信息。

关键词有两类,一类是动词,表示进行的动作;另一类是名词,可以与业务相关,也可以是动词的名词化形式。下面是一些常见的关键词:

  • add,或 feature,表示添加新功能
  • fix,缺陷修复
  • hotfix,紧急的缺陷修复
  • update,对已有功能进行更改或优化
  • remove,或者 rmdelete,删除部分代码、功能
  • refactor,重构了一些代码、功能
  • workflow,工作流程更改
  • chore,琐碎的修改
1
2
3
4
5
6
7
8
# 新增了支持用户上传文件的功能
$ git commit -m 'add: 上传文件功能'

# 修复了一个线上问题
$ git commit -m 'fix: **页面数字取值问题'

# 对某些代码进行了重构
$ git commit -m 'refactor: 重构商品列表页'

此外,对于每个项目,可以用业务相关的名词作为关键词前缀。例如:

1
2
# docs 表示这是对文档进行的修改
$ git commit -m 'docs: 更新接口文档'
Share