背景
平常开发中使用 eslint prettier 等校验工具时, 希望在提交代码前做一次校验或版本更新触发构建脚本,之类的操作。这是就需要用到 git hook, husky 就是方便我们操作 git hook 的工具。
安装
// 安装包
npm i -D husky
// 开启 git hooks
npx husky install
复制代码
使用例子
“shell
// package.json
// 配置执行脚本
{
“call”: “echo ‘Hello World'”
}
```shell
// 绑定 hook
npx husky add .husky/pre-commit "yarn call"
复制代码
// 触发hook
git add *
git commit 'hook test'
复制代码
触发 commit 之前, 打印了命令信息
.husky/
husky 默认安装在 .husky/ 目录,默认我们的hooks 都安装在该目录下。
如果某些钩子不需要使用,可以直接删除 .huksy/ 下的对应命令
命令
install 安装
husky intall <dir>
复制代码
uninstall 卸载
husky uninstall
复制代码
add 新增 hook
husky add <file> [cmd]
复制代码
set 设置、修改 hook
husky set <file> [cmd]
// 例如
npx husky set pre-commit check-file
复制代码
使用方法
指定安装目录
我们可以将husky安装到指定的目录下
npx husky install .config/husky
复制代码
绕过 hooks
使用 -n/–on-verify 可以跳过 pre-commit commit-msg 钩子
git commit -m "yolo!" --no-verify
复制代码
共享hooks 配置
可以通过导出配置文件的方式, 复用hooks配置或一次安装多个hook
// hooks.js
module.exports = {
'pre-commit': 'echo hello'
}
// 安装配置
npm install my-husky-scripts --save-dev
复制代码
参考
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END