赞
踩
关于 Git message 的写法规范社区中有很多种, 目前使用较为广泛的是 Angular 规范。
在 Angular 规范中, 每次提交, Commit message 都包括三个部分: Header、Body 和 Footer,下面进行详细介绍。
<type>(<scope>):<subject> # header部分
// 空一行
<body> # body部分
// 空一行
<footer> # footer部分
注意事项:
Header:
Header 部分只有一行, 包括三个字段: type(必须)、scope(可选)、subject(必须);
type(必填):
type 用于说明 commit 的类型, 在 Angular 规范中,只允许7种常用类型和一种特殊类型(revert):
feat: 新功能 (feature)
fix: 修补 bug
docs: 文档 (ocumentation)
style: 格式 (不影响代码运行)
refactory: 重构 (既不是新增功能, 也不是修改 bug 的代码改动)
test: 增加测试
chore: 构建过程或辅助工具的变动
revert: 撤销以前的 commit; header 部分需要跟被撤销 Commit 的 Header
scope:
scope 用于说明 commit 影响的范围, 比如说数据层、控制层、视图层等等。
subject:
subject 是 commit 的简短描述, 不超过 50 个字符。
注意事项:
以动词开头, 使用第一人称现在时,比如 change 而不是changed或者 changes 第一个字母小写 结尾不加句号
body:
body 部分是对本次 commit 的详细描述,可以分为多行。
footer:
在很多情况下, 是不使用这部分的内容的, 但是在下面两种情况下,回使用到 footer:
1.不兼容变动说明:如果当前代码与上一个版本不兼容,则 footer 部分需要使用 BREAKING CHANGE 开头,后面是对变动的描述以及变动理由和变动方法。
2.关闭Issue:如果当前 commit 是针对某个或者某几个issue,可以在footer 部分关闭issue。
关闭单个问题:
Closes #123
关闭多个问题:
Closes #123, #234, #345
增加功能:
模板:
feat(具体文件名/模块名称): 具体增加功能内容
示例:
feat(test.js): 增加测试本条message的文件test.js
修复bug:
模板:
fix(修复模块文案): 具体修复内容
Closes #bug ID
示例:
fix(项目结构): 新增项目文件
1.语料更新为多条
2.增加body说明
3.去除冗余语法
Closes #1
增加测试部分
模板:
test(测试的模块): 具体测试内容
示例:
test(登录): 增加登录界面单元测试代码
多条内容示例
feat(test1.js): 增加测试本条message的文件test1.js
feat(test2.js): 增加测试本条message的文件test2.js
fix(test1.js): 删除冗余文件test1.js
fix(test2.js): 删除冗余文件test2.js
Closes #1,#2
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。