1.释义:git hooks是一些自定义的脚本,用于控制git工作的流程,分为客户端钩子和服务端钩子。
2.安装husky:
npm install husky --save-dev
2.初始化husky: 两种方式: 方式一:
npx husky install
方式二:
package.json:{
scripts: {
"prepare": "husky install"
}
}
// 执行:
yarn prepare
3.变化如下:
3.1在.git同级目录生成.husky文件夹,文件夹下有一个可以编辑的示例pre-commit钩子
3.2在package.json中的scripts中添加了"prepare": "husky install"
3.3更改.git文件下面的config文件,配置项 core.hooksPath为.husky
4.创建一个pre-commit hook:
npx husky add .husky/pre-commit 'yarn lint-staged'
5.package.json配置lint-staged:
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"src/**/*.{js,jsx,tsx,ts}": "eslint",
"src/**/*.{css,less}": "stylelint"
}