将参数传递给git pre-push hook

时间:2016-05-04 19:17:27

标签: git githooks

我已经创建了一个git pre-push hook来构建我的.NET解决方案并运行单元测试。因此,执行git push命令现在会在将代码推送到原点之前触发构建/测试。

一切正常。但是,有些情况下,我想绕过这个钩子。也许我知道测试失败了,现在还可以,我只是想跳过我的钩子中的逻辑。

理想情况下,我能够做到这样的事情:

git push --skip-tests

然而,由于git将--skip-tests标记为无效参数,因此似乎无法飞行。有没有一种方法可以在执行推送时从命令行将参数传递到钩子中,以便我可以根据该参数是否存在来分支钩子逻辑?

1 个答案:

答案 0 :(得分:6)

你应该跳过它:

git push --no-verify

来自git push man page

  

使用--no-verify,钩子完全被绕过。

然而,这不仅仅是测试,而是所有钩子:也是。

你可以保留钩子,但是添加一个钩子脚本会检测到的环境变量,以便构建但不进行测试。

skip-test=true git push