Git 提交信息规范化有助于查错(甩锅),这样团队合作的时候,如果出问题可以先看 git log。但是如果提交的信息不明确那就……所以我们可以使用工具辅助在提交的时候必须填写相关内容。

一、commitizen

commitizen:基于 Node.js 的 git commit 命令行工具,辅助生成标准化规范化的 commit message。

cz-git、git-cz、cz-customizable、cz-conventional-changelog 等是 commitizen 的适配器(也可以理解为 gui 交互窗口,窗口的 UI 各具特色):提交时选择的交互式页面,依赖于 commitizen 工作。

你可以把上面的适配器全部安装,然后一个一个体验一遍,找到自己喜欢的 UI 使用。使用哪个适配器在 package.json 中配置即可。

本文选用 cz-git 进行安装。Github 地址:

二、安装

1. 本地安装cz-git

1
2
npm install -g commitizen
npm install -D cz-git
package.json
1
2
3
4
5
6
7
8
{
...
"config": {
"commitizen": {
"path": "./node_module/cz-git|git-cz|cz-customizable|cz-conventional-changelog"
}
}
}

2. 全局安装cz-git

1
npm install -g commitizen cz-git
package.json
1
2
3
4
5
6
7
8
{
...
"config": {
"commitizen": {
"path": "cz-git|git-cz|cz-customizable|cz-conventional-changelog"
}
}
}

3. 使用

1
cz

多人合作避免 cz-git 版本不一致问题可以选用本地安装,使团队成员使用同一个版本,个人可以直接使用全局安装。

三、czg

czg 的安装、使用非常方便,它也可以进行自定义配置,但是省去了很多的麻烦,强烈推荐使用,具体内容可以查看 官方文档

  • 无需前置配置,无需适配器,没有额外的步骤,你可以使用 npx | npm 脚本 | 全局下载... 在你的任何项目中快速启动。
  • 可定制化: 内部包含 cz-git 的核心,继承了 cz-git 的所有特性,具有相同的行为,配置加载… 你可以根据自己的需要配置的 CLI 的行为。
1
2
3
4
# 全局安装
npm i -g czg
# 特性以及帮助文档
czg --help

本站由 江湖浪子 使用 Stellar 1.29.1 主题创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。