前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >husky 从0到1 (git hooks 工具)

husky 从0到1 (git hooks 工具)

作者头像
copy_left
发布2021-07-01 10:24:48
7760
发布2021-07-01 10:24:48
举报
文章被收录于专栏:方球方球

背景

平常开发中使用 eslint prettier 等校验工具时, 希望在提交代码前做一次校验或版本更新触发构建脚本,之类的操作。这是就需要用到 git hook, husky 就是方便我们操作 git hook 的工具。

安装

代码语言:javascript
复制
// 安装包
npm i -D husky
// 开启 git hooks
npx husky install

使用例子

``shell // package.json // 配置执行脚本 { "call": "echo 'Hello World'" }

代码语言:javascript
复制
```shell
// 绑定 hook
npx husky add .husky/pre-commit "yarn call"
代码语言:javascript
复制
// 触发hook
git add *
git commit 'hook test'

触发 commit 之前, 打印了命令信息

.husky/

husky 默认安装在 .husky/ 目录,默认我们的hooks 都安装在该目录下。

如果某些钩子不需要使用,可以直接删除 .huksy/ 下的对应命令

命令

install 安装

代码语言:javascript
复制
husky intall <dir>  

uninstall 卸载

代码语言:javascript
复制
husky uninstall

add 新增 hook

代码语言:javascript
复制
husky add <file> [cmd]

set 设置、修改 hook

代码语言:javascript
复制
husky set <file> [cmd]
// 例如
npx husky set pre-commit check-file

使用方法

指定安装目录

我们可以将husky安装到指定的目录下

代码语言:javascript
复制
npx husky install .config/husky

绕过 hooks

使用 -n/--on-verify 可以跳过 pre-commit commit-msg 钩子

代码语言:javascript
复制
git commit -m "yolo!" --no-verify

共享hooks 配置

可以通过导出配置文件的方式, 复用hooks配置或一次安装多个hook

代码语言:javascript
复制
// hooks.js
module.exports = {
  'pre-commit': 'echo hello'
}

// 安装配置
npm install my-husky-scripts --save-dev

参考

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 安装
  • 使用例子
  • .husky/
  • 命令
    • install 安装
      • uninstall 卸载
        • add 新增 hook
          • set 设置、修改 hook
          • 使用方法
            • 指定安装目录
              • 绕过 hooks
                • 共享hooks 配置
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档