一直在用git,但是每次提交代码都会很乱,所以我自己总结了一份git commit模板自用,大家可以参考一下
基本如下
模板基本如下
<类型>[可选的作用域]: <描述>
[可选的正文]
[可选的脚注]
类型
目前类型比较常用的是Angular.js规定的规范,我看也差不多,所以就沿用那个套规范
feat:新功能(feature)
fix:修复bug,可以是QA发现的BUG,也可以是研发自己发现的BUG
docs:文档(documentation)
style:格式(不影响代码运行的变动)
refactor:重构(即不是新增功能,也不是修改bug的代码变动)
perf:优化相关,比如提升性能、体验
test:增加测试
chore:构建过程或辅助工具的变动
revert:回滚到上一个版本
merge:代码合并
sync:同步主线或分支的Bug
作用域
可以是组件名或者类名或者是具体的文件,如果项目小可以不填,作为一个可选项
描述
描述应为针对本次修改最准确的描述,切忌过长或者过短,应为50个字以内为佳,我自己用的中文
正文
正文是对所做的修改做具体的说明,包括修改的动机,修改的注意事项,具体修改的地方,参考文章等,对于小的修改可省略
脚注
脚注则是针对两种情况
- 不兼容变动
如果当前代码与上一个版本不兼容,则 Footer 部分以BREAKING CHANGE开头,后面是对变动的描述、以及变动理由和迁移方法
BREAKING CHANGE: isolate scope bindings definition has changed.
To migrate the code follow the example below:
Before:
scope: {
myAttr: 'attribute',
}
After:
scope: {
myAttr: '@',
}
The removed `inject` wasn't generaly useful for directives so there should be no code using it.
- 关闭 Issue
可以关闭某个或多个issue
Closes #234 #256
案例
- 案例1:
feat(login): 增加login接口
增加登录接口
url:https://wwww.demo.com/login
param:
username:admin
password:admin
- 案例2:
perf(etcd): 缩短etcd登录时间
登录后15min内再次登录采用快速验证方式
从而缩短短时间高频率访问etcd带来的时间消耗
重复登录时间由20ms缩短到5ms
closed #123
TODO
参考文献
Git commit message 规范
Commit message 和 Change log 编写指南