规范
大致分为以下3个部分(使用空格或空行分隔)
- 标题行:必填,描述主要修改类型和内容或模块
- 主体内容:描述为什么修改,做了什么修改变动,以及开发思路等
- 页脚注释:放Breaking Changes 或 Closed Issues
type:commit得类型
- init:初始化
- feat:新特性/新功能
- fix:修改问题/解决bug
- refactor:代码重构
- docs:文档修改
- style:代码格式修改
- build:构建项目
- chore:其他修改,比如依赖管理
- scope:commit影响得范围
- subject:commit的描述
body:commit具体修改内容·,可以分多行
footor:一些备注,通常是BREAKING CHANGE 或修复的 bug 的链接
示例
fix(修复BUG)
如果修复的这个BUG只影响当前修改的文件,可不加范围。如果影响的范围比较大,要加上范围描述。
例如这次 BUG 修复影响到全局,可以加个 global。如果影响的是某个目录或某个功能,可以加上该目录的路径,或者对应的功能名称。
// 示例1
fix(global):修复checkbox不能复选的问题
// 示例2 下面圆括号里的 common 为通用管理的名称
fix(common): 修复字体过小的BUG,将通用管理下所有页面的默认字体大小修改为 14px
// 示例3
fix: value.length -> values.length
feat(新增一个功能)
feat: 实现与中国海关的链路通讯
style(如WPF界面调整样式等)
style:修改登录窗体大小
chore(其他修改)
chore 的中文翻译为日常事务、例行工作,顾名思义,即不在其他 commit 类型中的修改,都可以用 chore 表示。
chore:去除不必要的依赖
规范在方便他人的同时,也是方便自己。