参考:

官网: https://typicode.github.io/husky/

简介

Husky是一个用于在Git存储库中设置Git hooks(钩子)的工具。Git hooks是在特定的Git操作(例如提交、合并等)发生时触发的自定义脚本或命令。Husky允许开发人员在Git操作发生前或后运行自定义脚本,以执行各种任务,例如代码格式化、代码质量检查、测试等。

安装与配置

方式一(简洁快速)

1.安装Husky

npx husky-init && npm install

方式二

1.安装Husky

npm install husky --save-dev

2.启用Husky

npx husky install

3.执行命令,会在 package.json 文件添加下面命令

npm pkg set scripts.prepare="husky install"
{
    scripts: {
        "prepare": "husky install"
    }
}

以上安装完成后变化:

  • 在.git同级目录生成.husky文件夹,文件夹下有一个可以编辑的示例pre-commit钩子

  • 在package.json中的scripts中添加了"prepare": "husky install"

  • 更改.git文件下面的config文件,配置项 core.hooksPath.husky

钩子管理

1.创建commit-msg钩子

npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'

成功后

ps: 这里引入了提交信息检查工具commitlint, 具体配置请执行查询,另也可配合eslint等等

2.更新或修改


修改.husky文件夹下的hooks脚本即可。

3.卸载还原

npm uninstall husky && git config --unset core.hooksPath