提交时Commit message 包括三个部分:Header,Body 和 Footer。(一般只要Header部分)
1
2
3
4
5
<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>
其中,Header 是必需的,Header里面:type(必需)、
scope(可选)和
subject(必需)
type
用于说明 commit 的类别,只允许使用下面8个标识。
- feat:新功能(feature)
- fix:修补bug
- docs:文档(documentation)
- style: 格式(不影响代码运行的变动)
- refactor:重构(即不是新增功能,也不是修改bug的代码变动)
- test:增加测试
- chore:构建过程或辅助工具的变动
- revert: 如果当前 commit 用于撤销以前的 commit,则必须以
revert:
开头,后面跟被撤销 Commit 的 完整Header。
如: fix(控制层):修复 bug-1442 点击过检索框,再切换语言,检索框默认文字显示黑色
revert:fix(控制层):修复 bug-1442 点击过检索框,再切换语言,检索框默认文字显示黑色
scope
用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同,比如使用模块名。
win上使用TortoiseGit添加模板,创建文件git_commit.txt,内容如下:
1
2
3
4
fix($scope): xxxx
问题原因:xxx
解决方法:xxx
影响分析:xxx
然后编辑.gitconfig文件,添加
1
2
[commit]
template = C:\\Users\\elesos\\git_commit.txt
mac平台上可以使用sourceTree设置模板(在Commit tab页面设置)。sourceTree的win版本不支持设置
参考
https://www.ruanyifeng.com/blogimg/asset/2016/bg2016010604.png
https://www.ruanyifeng.com/blog/2016/01/commit_message_change_log.html
欢迎评论交流