使用 git hook 在代码提交前执行 npm script

如果你的项目使用了 git,那么在.git 下有一个 hook 文件夹。里面有例如:pre-commit.sample、pre-push.sample等文件。很容易理解,就是在 commit 和 push 前会执行的脚本。

那么 git hook 能用来干什么呢?比如说,在 commit 之前进行 lint 检查;在 push 之前进行单元测试。这样子,如果 lint 或者 UT 出错,则会提示。只有乖乖去改 lint,改 UT。提交上去的代码质量就有了保证。听上去就很有用吧。

git hook看了一下,需要配置一下,没有仔细了解。但是偶然发现了pre-commit 和 pre-push 两个库,只需简单配置一下即可使用。

以 pre-commit 为例,首先安装:
npm install --save-dev pre-commit
配置,例如在 commit 前运行 npm run lint,编辑 package.json:

{
……
  "scripts": {
      "lint": "……",
  },
  "pre-commit": ["lint"]
}
……

pre-commit 配置是一个数组,可以添加多个命令,会依次执行。
同理,pre-push 的安装和配置为:
安装:
npm install --save-dev pre-push
配置,在 package.json 中配置 pre-push,例如在 push 前运行测试:

{
……
  "scripts": {
      " test": "……",
  },
  "pre-push": ["test"]
}
……

你可能感兴趣的:(使用 git hook 在代码提交前执行 npm script)