提交规范配置
引言
要实现 Git 提交规范配置,通常会结合使用 commitlint
配合 husky
来确保提交信息符合约定的格式。
避免不规范的提交信息进入代码库。不仅提高了代码的可维护性,还能使团队协作更顺畅。
安装依赖
需要在项目中安装 commitlint
和 husky
,这两个工具能够帮助实现提交信息的规范化。
@commitlint/cli
: 是 commitlint 的命令行工具。@commitlint/config-conventional
: 是一组常用的提交信息规范规则。husky
: 用于在 Git 钩子(如pre-commit
或commit-msg
)中添加钩子功能。
1 | 安装 commitlint 和 husky |
配置 Commitlint
在项目根目录下创建一个 commitlint
配置文件,通常是 .commitlintrc.js
、commitlint.config.js
或 .commitlintrc.json
,用于定义提交规范。
1 | // commitlint.config.js |
@commitlint/config-conventional
常见规则包括:
type
必须是以下几种之一:feat
(新功能)fix
(修复)docs
(文档)style
(代码风格)refactor
(代码重构)perf
(性能优化)test
(增加测试)build
(构建工具相关)ci
(CI 配置相关)chore
(杂项任务)revert
(回滚)。
scope
可选,描述修改的范围。subject
是提交的简短描述。
合规的提交信息示例:
1 | message: type(scope): subject |
配置 Husky
Husky 允许在 Git 钩子中添加自定义的行为,比如在提交时检查提交信息。
初始化 Husky 配置
1 | npx husky |
commit-msg hook
添加 commit-msg
钩子,这个钩子会在每次提交时检查提交信息是否符合规范。
配置 .husky/commit-msg
文件:
1 |
|
该钩子会在每次提交时自动调用 commitlint
,确保提交信息符合规范。
如果提交信息不符合规则,提交会被拒绝,用户需要修改提交信息后再提交。
(可选) 自定义提交规范
如果需要自定义提交规范,可以在配置文件中进行修改。
可以更改 type
的可选值,或者自定义 subject
的最大长度。
1 | module.exports = { |