conventional commits 一种用于给提交信息增加人机可读含义的规范
是什么
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
commit 的类型
- feat: 新特性。对应版本的 minor。
- fix: 修改问题。对应版本的 patch。
- feat! fix!。! 表示存在破坏性更新。
- refactor: 代码重构。
- docs: 文档修改
- style: 代码格式修改, 注意不是 css 修改
- test: 测试用例修改
- chore: 其他修改, 比如构建流程, 依赖管理.
scope: commit 影响的范围, 比如: route, component, utils, build...
subject: commit 的概述, 建议符合 50/72 formatting
body: commit 具体修改内容, 可以分为多行, 建议符合 50/72 formatting
footer: 一些备注, 通常是 BREAKING CHANGE 或修复的 bug 的链接
好处
- 自动话生产 CHANGELOG。
- 自动决定语义化版本变更。