commit message 是开发的日常操作, 写好 log 不仅有助于他人 review, 还可以有效的输出 CHANGELOG, 对项目的管理实际至关重要, 但是实际工作中却常常被大家忽略。 希望通过本文, 能够帮助大家重视和规范 commit message 的书写.
规范参考:Angular团队规范衍生的 Conventional Commits specification
分别由如下部分构成👇
-
type: commit 的类型
-
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 的链接.
这样一个符合规范的 commit message, 就好像是一份邮件.
下面为具体操作步骤
全局安装
npm install -g commitizen cz-conventional-changelog
echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc
主要, 全局模式下, 需要 ~/.czrc 配置文件, 为 commitizen 指定 Adapter.
windows系统下改成:echo { "path": "cz-conventional-changelog" } > C:\Users\{你的账户名}\.czrc
注意⚠️:mac要加 sudo
提交命令为
git add .
git cz
git push
效果如下
无填入内容直接回车即可 ^^