Git提交规范
目的:规范化团队commit信息标准,便于coderview的后续查阅,版本发布等
每次提交,Commit message都包括三个部分:Header,Body和Footer
Commit message格式:
<type>(scope): <subject>
<空行>
<body>
<空行
<footer>
1
2
3
4
5
2
3
4
5
- Header是必需的,Body和Footer可以根据具体情况而定。
- Header冒号使用英文冒号,并且后面跟一个空格再进行内容的编写
# Header
Header部分包括三个字段:type,scope(可选)和subject
type有以下类型:
feat
:新增功能fix
:修复bugdocs
:修改文档refactor
:代码重构,指未新增任何功能和修复任何bugbuild
:改变构建流程,新增依赖库,工具等(例如vue生成的dist文件夹)style
:仅针对代码的格式(空格,缩进)进行修改,修改注释等,不改变代码逻辑perf
:改善性能和体现的修改chore
:不修改src或者test的其余改动,改变构建流程或增加依赖库,工具等test
:测试用例的修改ci
:自动化流程配置的修改,docker配置文件的更改revert
:回滚上一个版本init
:初始化项目,一般只在创建项目的时候第一次提交进行使用
scope:用于说明commit影响的范围,即填写更改的apps模块,若更改全局则不填写
subject:commit目的的简短描述,不超过50个字符
- 以动词开头,使用中文描述
- 结尾不加英文句号(
.
)
# Body
body部分是对本次commit的详细描述,可以分成多行
应该说明代码变动的动机,以及与以前行为的对比
# Footer
只用于两种情况:
- 不兼容变动:当前代码与上一个版本不兼容,则以BREAKING CHANGE开头,后面是对变动的描述,以及变动的理由和迁移方法
样例:
BREAKING CHANGE: 修改数据库xx表结构
Before:使用xxx,xxx字段
After:更改为xxx,xxx字段
需要进行重新迁移文件
1
2
3
4
2
3
4
- 关闭Issue:如果当前commit针对某个issue,那么可以在Footer部分关闭这个issue
样例:
Closes #234
# 关闭多个issue
Closes #123, #345, #456
1
2
3
4
2
3
4
# 样例
docs(playbook): 更新文档
针对一下部分进行修改:
- 解决文档无法显示的问题
- 缩进
- 新增剧本的文档内容
Closes #123
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
编辑 (opens new window)
上次更新: 2022/05/22, 23:59:38