git规定提交时必须要写提交信息,作为改动说明保存在 commit 历史中,方便回溯。规范的 log 不仅有助于他人 review,还可以有效的输出 change_log甚至对于项目的研发质量都有很大的提升。参考目前比较流行的Angular团队的commit规范 分别对应 Commit message 的三个部分:Header,Body 和 Footer Header 部分只有一行 包括三个字段:type(必需)、scope(可选)和subject(必需) type::用于说明 commit 的类型,一般有以下几种 scope:用于说明 commit 影响的范围 比如:视图层、控制层、数据层、docs、config、plugin、util、test subject:commit 目的的简短描述 一般不超过50个字 补充 subject 添加详细说明,可以分成多行 适当增加原因、目的等相关因素,也可不写 参考 当有当前代码与上一个版本不兼容(Breaking Change)时必须在这里描述清楚 修复的 bug(关闭issue)或是链接到相关文档,如 Closes #1, Closes #2, #3 新建 .gitmessage.txt(模板文件) ,参考内容如下 本文使用 markdown.com.cn 排版背景
「Angular commit规范格式」
<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>Header
❝
❝
Body
# body: 72-character wrapped. This should answer:
# * Why was this change necessary?
# * How does it address the problem?
# * Are there any side effects?
# initial commit「Footer」
❝
使用
# headr: <type>(<scope>): <subject>
# - type: feat, fix, docs, style, refactor, test, chore
# - scope: can be empty
# - subject: start with verb (such as 'change'), 50-character line
#
# body: 72-character wrapped. This should answer:
# * Why was this change necessary?
# * How does it address the problem?
# * Are there any side effects?
#
# footer:
# - Include a link to the issue.
# - BREAKING CHANGE
#
//这个命令只能设置当前分支的提交模板
git config commit.template [模板文件名]
//这个命令能设置全局的提交模板,注意global前面是两杠
git config --global commit.template [模板文件名]Idea 插件