【工具】husky 与pre-commit

现在前端主要有两种git钩子插件:husky,pre-commit。
下面我介绍一个git钩子,再介绍下husky与pre-commit的用法。

git 钩子

git有很多命令commit、push、rebase等等,这些命令主要是在执行.git文件夹中的东西,git 钩子目录就是在.git文件夹的hooks下。

cd .git/hooks
 ls -l

可以把sample去掉,直接编写shell脚本来执行。
而前端的则可以用插件husky与pre-commit,来使钩子生效。

husky

husky能够防止不规范代码被commit、push、merge等等。
首先安装husky:

  npm install husky --save-dev
{
  "scripts": {
    "precommit": "webpack  --config ./web/webpack.config.js",
    "...": "..."
  }
}

当你git commit的时候,将会现现执行precommit里的脚本,没有问题了再提交。

pre-commit

pre-commit能够防止不规范代码被commit,没有husky这么全面,但是你可以接着安装pre-push等插件来防止对应的git操作。下面以pre-commit为例:
首先安装pre-commit。

npm install pre-commit --save-dev

编辑package.json文件,如:

总结

prevent commit时,我们可以把eslint检测代码规范:

"scripts": {
    "precommit": "lint-staged"
  }
posted @ 2021-03-30 07:26  攀登高山  阅读(1581)  评论(0)    收藏  举报