git commit提交需要规范且,不规范进行提示
安装
npm install --save-dev @commitlint/{cli,config-conventional}
根目录创建 commitlint.config.js 文件 配置参考
/**
* feat:新功能更新
* style:改变代码格式,如删除空行、格式化代码、去除不必要的分号等等,不影响代码功能逻辑的操作
* fix:修补某功能的bug
* refactor:代码重构时使用,不是功能更新也不是 bug 修复的更改
* perf: 性能优化等
* test: 添加测试用例或者修改测试用例
* build:由打包工具造成的改变(如gulp、webpack编译文件)
* chore:更改构建过程、修改配置文件,添加/删除辅助工具或者库
* revert:撤销之前的提交
*/
module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
'type-enum': [2, 'always', ['feat', 'fix', 'style', 'refactor', 'perf', 'test', 'build', 'chore', 'revert']],
'subject-max-length': [1, 'always', 150], // subject建议150字以内
},
};
husky4.3,低于6的版本,默认会带有所有钩子,所以package.json配置如下就可以
"husky": {
"hooks": {
"pre-commit": "lint-staged",
"commit-msg": "commitlint -e $HUSKY_GIT_PARAMS"
}
},
husky高于6.0的无需package.json配置,需要自己添加钩子,在终端执行如下命令
npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'
会产生对应钩子文件
最后测试下,正确就提交了,不正确提示