配置脚本
"scripts": {
"prepare": "husky install",
"commitlint": "commitlint -es -V",
"lint-staged": "lint-staged"
},
1.安装commiitlint
npm i -D @commitlint/cli @commitlint/config-conventional
commitlint.config.js配置
module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
'type-enum': [
2,
'always',
[
'build',
'chore',
'ci',
'docs',
'feat',
'fix',
'perf',
'refactor',
'revert',
'style',
'test',
],
],
},
}
2.安装husky
npm i -D husky
执行
npm run prepare
添加pre-commit和commit-msg hook
npx husky add .husky/commit-msg
npx husky add .husky/pre-commit
.husky/commit-msg添加 npm run commit-msg命令
.husky/pre-commit添加 npm run lint-staged命令
3.安装lint-staged
npm i -D lint-staged
在package.json根配置lint-staged
"lint-staged": {
"*.{js}": ["相关lint命令"]
},