网上介绍新版husky的文章太少了,这里记录一下本人在使用新版husky8.0的整个过程,希望对大家有所帮助!
本人使用的版本信息如下:
"husky": "^8.0.1",
"@commitlint/cli": "^17.0.1"
"@commitlint/config-conventional": "^17.0.0"
NODEJS版本为v17.3.0
最简单的,只需要这三个东西就行了
npm install --save-dev husky @commitlint/cli @commitlint/config-conventional
网上其他文章,把很多杂七杂八的依赖包搅在一起,没有实际的意义
配置也很简单!
npx husky install
npx husky add .husky/commit-msg 'npx --no -- commitlint --edit $1'
commitlint.config.js
内容如下:
module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
'type-case': [2, 'always', ['lower-case', 'upper-case']],
'type-enum': [2, 'always',['feat', 'fix', 'docs','style','refactor','perf','test', 'chore', 'revert']]
}
}
至此,所有的配置就完成了
输入
git commit -m "错误测试"
git返回
✖ subject may not be empty [subject-empty]
✖ type may not be empty [type-empty]
✖ found 2 problems, 0 warnings
ⓘ Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint
husky - commit-msg hook exited with code 1 (error)
可以看见,规范已经生效了,这个"错误测试"没提供type
和subject
最后再补充两个附加信息,提交信息和配置文件的解释,用的时候来我这篇文章查一查就行了哦~
提交格式:
():
1. type 为必填项,用于指定 commit 的类型
2. scope 为非必填项,用于描述改动的影响范围
scope可以是文件名,也可以是模块名,由自己定
3. subject 是必填项,代表此次提交的日志信息
这里大家就参考其官方链接吧: commitlint配置文件官方原文
后续有空,我再给大家分享这些配置的中文介绍,放心,不会放大家鸽子的!
觉得有用,还请点赞收藏!
励志前端,CSDN唯一账号!关注我,带你了解更多前端知识!