目录
git钩子函数
在.git文件夹下的hooks文件中,有下面这些钩子函数,只需要将.sample后缀去除,如下图,在提交代码之前便会执行pre-commit文件。
注意重写该类文件文件的第一行#!/bin/sh不能删除,#!/bin/bash是指此脚本使用/bin/bash来解释执行。
husky
通过在package.json文件中配置在git的操作的生命周期里执行命令。
安装
npm install husky
使用
在package.json中添加属性"husky":{"hooks":{"pre-commit":"npm run dev"}},这就代表在提交代码前运行npm run dev这个命令。里面的生命周期钩子和上图中的文件名对应。
通常搭配lint-staged使用。
例如下面安装husky和lint-staged后配置package.json文件如下:
{
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"*.js": "eslint --fix"
}
}
上面表示在commit代码之前自动运行lint-staged对暂存区的js文件用eslint格式化修复。
前端格式化
前端格式化工具使用(eslint、stylelint、prettier、lint-staged和husky搭配格式化代码)_YF-SOD的博客-CSDN博客