Git提交日志格式规约

8/3/2022 运维版本控制Git

# 基本格式

<type>(<scope>): <subject>	//header部分
<BLANK LINE>				//空行
<body>						//body部分
<BLANK LINE>				//空行
<footer>					//footer部分
1
2
3
4
5

header部分必需,body 和 footer 部分可选。 <subject>, <body>, <footer>内容默认使用中文。


# header部分

<type>取值

  • feat/add 功能新增
  • fix 错误修复
  • docs 文档更改(只涉及文档的新增或修改)
  • test 测试更改(只涉及测试的新增或修改)
  • chore 构建过程或辅助工具的更改(只涉及构建或编译的新增或修改)
  • style 代码格式化(只涉及代码格式的新增或修改,例如:空格、分号等)
  • refactor 代码重构(只涉及代码的重构,不改变原功能,例如:变量重命名、if-else重写等)
  • perf 代码优化,性能提升,或者用户体验提升(例如:时间复杂度从 O(n) 优化到 O(1) 的提升)
  • merge 代码合并(需描述出从哪个分支合并到哪个分支)
  • revert 回退到上一个版本(需描述出回退的原因)

<scope>取值

指明修改内容的范围,可以是空。

<subject>取值

用于概括一次提交行为囊括的内容

  • 时态方面使用一般现在时,不要用过去时态。虽然查看 log 时,log 内容本身都发生在过去,然而对于主题来说,使用现在时的时态更简洁明确,并且更易达成一致性。
  • 句式使用祈使句式。即一般情况不要增加主语。因为在绝大情况下,主语都是作者「我」。
  • 句尾无需结束标点;如果使用英语,则句首同样无需大写。同样是因为主题(或称标题)本身不用形成完整的句子。

# body部分

日志的内容主体 body 用来描述详细的提交内容,可写、可不写。


日志的内容页脚 footer 用来描述一些补充信息,可写、可不写。

# 参考资料

Karma 的 Git 日志规约 (opens new window)

上次更新时间: 6/16/2023, 10:07:02 AM