git提交规范
每次提交,Commit message 都包括三个部分:Header,Body 和 Footer。
其中,Header 是必需的,Body 和 Footer 可以省略。
<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>
-
Header
Header部分只有一行,包括两个字段:type(必需)
和subject(必需)
。
type
:commit 的类别,只允许使用下面9个标识。//注意冒号后面的空格
feat: 新功能(feature)
fix: 修补bug
docs: 文档(documentation)
style: 格式(不影响代码运行的变动)
refactor: 重构(即不是新增功能,也不是修改bug的代码变动)
chore: 构建过程或辅助工具的变动
revert: 撤销,版本回退
perf: 性能优化
test:测试
improvement: 改进
build: 打包
ci: 持续集成subject
是 commit 目的的简短描述,不超过50个字符,以动词开头,使用第一人称现在时,比如修改/修复/增加等。
scope
用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同。 -
Body
Body 部分是对本次 commit 的详细描述,可以分成多行。//举个例子 xxx/xxx.vue 修改内容 xxx/xxx.vue 修改内容
-
Footer
Footer 部分只用于两种情况。
- 不兼容变动
如果当前代码与上一个版本不兼容,则 Footer 部分以BREAKING CHANGE开头,后面是对变动的描述、以及变动理由和迁移方法。
2.关闭 bug/需求BREAKING CHANGE: 项目webpack升级到4.0版本 xx插件替换成xx插件
closes 3056, 11231
- 不兼容变动
提示:有一种特殊情况,如果当前 commit 用于撤销以前的 commit,则必须以revert:开头,后面跟着被撤销 Commit 的 Header。
revert: feat(pencil): 回退当前版本667ec到 sssee2