什么是 commitlint
commitlint 用来校验你提交的信息是否符合规范,它和commitizen
很类似,它们都做一件事,那就是让你提交的信息更规范
commitlint 和 commitizen 的区别
commitlint: 校验 git commit 信息是否符合规范(就像 eslint 一样)
commitizen: 辅助 git commit 信息更加规范(就像代码提示一样)
所以你可以把它们两个结合起来使用效果更佳哦~
安装
COPY
1 | npm install --save-dev @commitlint/config-conventional @commitlint/cli |
创建配置文件,可以手动创建,也可以使用命令创建
COPY
1 | echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js |
然后就会生成commitlint.config.js
文件,其中包含module.exports = {extends: ['@commitlint/config-conventional']}
代码
这个配置也可以写在
package.json
文件中
COPY
1 | { |
配合commitizen使用
配合 commitizen 可以参考这篇文章: 使用commitizen规范化git提交信息
配合husky使用
关于如何使用husky可以参考这篇文章: 使用Husky(哈士奇)管理Git项目
添加hook
COPY
1 | npx husky add .husky/commit-msg 'npx --no -- commitlint --edit "$1"' |
测试
不符合规范的提交信息
COPY
1 | $ git commit -m "abc" |