1) 简介
安装: npm install git-pre-hooks --save-dev
git hooks是一些自定义的脚本,用于控制git工作的流程,分为客户端钩子和服务端钩子。
客户端钩子包括:pre-commit、prepare-commit-msg、commit-msg、post-commit等,主要用于控制客户端git的提交工作流。服务端钩子:pre-release、post-release、update,主要在服务端接收提交对象时、推送到服务器之前调用。
git hooks位置位于每个git项目下的隐藏文件夹.git中的hooks文件夹里,进去后会看到一些hooks的官方示例,他们都是以.sample结尾的文件名。注意这些以.sample结尾的示例脚本是不会执行的,只有重命名后才会生效
2) pre-commit
git commit 执行,若执行结果出错则取消commit 否则继续提交。 常用于代码风格检查以及文件检查
3) pre-push
本地进行git push自动执行。效果同commit。
4) pre-release
服务端钩子,发布前执行
5) post-release
服务端钩子,发布后执行