用 commitlint 和 husky 管理你的 Git 提交信息
2023-10-20 05:04:58
在 Git 中,提交信息是一个非常重要的元数据,它记录了每一次代码更改的详细信息。规范化的提交信息不仅可以提高代码的可读性和可维护性,还可以帮助团队成员更好地理解代码更改的背景和意图。
为了规范化团队的 Git 提交信息,我们可以使用 commitlint 和 husky 这两个工具。commitlint 是一个用于检查提交信息的工具,它可以根据自定义的规则对提交信息进行校验。husky 是一个 Git 钩子工具,它可以在 Git 工作流的特定阶段执行特定的任务。
首先,我们需要在项目中安装 commitlint 和 husky。
npm install --save-dev @commitlint/cli @commitlint/config-conventional @husky
然后,我们需要创建一个 commitlint 配置文件。我们可以使用 @commitlint/config-conventional
这个预定义的配置,它遵循了 Conventional Commits 规范。
npx --no-install commitlint init --preset conventional
这样就会在项目根目录下生成一个 .commitlintrc.js
文件。我们可以根据自己的需要修改这个配置文件。
接下来,我们需要创建一个 husky 配置文件。
npx --no-install husky init
这样就会在项目根目录下生成一个 .huskyrc
文件。我们可以根据自己的需要修改这个配置文件。
在 .huskyrc
文件中,我们需要添加如下内容:
[commit-msg]
command = commitlint -E HUSKY_GIT_PARAMS
这段代码的意思是,在 Git 提交时,先使用 commitlint 检查提交信息是否符合规范。如果符合规范,则继续提交;如果不符合规范,则终止提交,并给出提示信息。
现在,我们就完成了 commitlint 和 husky 的配置。我们可以尝试提交一些代码,看看是否符合规范。
git add .
git commit -m "fix: 修复了一个 bug"
如果提交信息符合规范,则会成功提交。否则,会给出提示信息,并终止提交。
error: Commit message must start with a short summary.
我们可以根据提示信息修改提交信息,直到符合规范为止。
commitlint 和 husky 可以帮助我们规范化团队的 Git 提交信息,从而提高代码的可读性和可维护性。同时,它还可以帮助团队成员更好地理解代码更改的背景和意图。