如果测试失败,则从预提交GIT钩子返回失败代码
我有一个gulptask如果测试失败,则从预提交GIT钩子返回失败代码,git,bash,gulp,git-bash,Git,Bash,Gulp,Git Bash,我有一个gulptasktest,它使用mocha来运行我的单元测试 我想将单元测试作为GITpre-commithook的一部分来运行 因此,我的预提交文件基本上如下所示: #!/bin/bash gulp test 我的问题是,即使测试失败,也会进行提交。如何从我的预提交文件中检测测试失败?Bash脚本的退出代码是最后执行的命令的退出代码。 如果gulp测试失败, 它以非零形式存在, 这意味着失败, 提交应该被中止 你确定钩子脚本被执行了吗 脚本必须位于.git/hooks/pre-co
test
,它使用mocha来运行我的单元测试
我想将单元测试作为GITpre-commit
hook的一部分来运行
因此,我的预提交文件基本上如下所示:
#!/bin/bash
gulp test
我的问题是,即使测试失败,也会进行提交。如何从我的预提交
文件中检测测试失败?Bash脚本的退出代码是最后执行的命令的退出代码。
如果gulp测试失败,
它以非零形式存在,
这意味着失败,
提交应该被中止
你确定钩子脚本被执行了吗
- 脚本必须位于
.git/hooks/pre-commit
- 脚本必须是可执行的
假设满足这些条件,,
发布的脚本应按预期工作。
如果没有,则对其进行修改,以帮助调试并发布预期失败的示例提交的输出
#!/bin/bash
gulp test
x=$?
echo exit code = $x
exit $x
您需要获得吞咽测试的结果
。如果成功,则在pre-commit
中退出0
,或者不执行任何操作。如果失败,则以非零代码退出。如果测试失败,是否以非零代码退出?否则它如何返回失败?