栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

仅在测试通过时提交git

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

仅在测试通过时提交git

我将检查以确保脚本的每个步骤在失败时都返回非零退出代码。

python3.1 foo.py--test
如果测试失败,请检查您是否返回非零退出代码。检查以确保您的
make test
命令返回非零退出代码。最后,检查
pre-commit
钩子本身在失败时是否返回非零退出代码。

您可以通过添加

|| echo $?
到命令末尾来检查非零退出代码。如果命令失败,它将打印出退出代码。

以下示例对我有用(我将stderr重定向

/dev/null
以避免在此处包括过多无关的输出):

$ python3.1 test.py 2>/dev/null || echo $?1$ make test 2>/dev/null || echo $?python3.1 test.py2$ .git/hooks/pre-commit 2>/dev/null || echo $?python3.1 test.py1

test.py

import unittestclass TestFailure(unittest.TestCase):    def testFail(self):        assert(False)if __name__ == '__main__':    unittest.main()

Makefile

test:    python3.1 test.py

.git/hooks/pre-commit

#!/bin/shmake test || exit 1

注意

|| exit 1
。如果
maketest
是挂钩中的最后一条命令,则没有必要,因为最后一条命令的退出状态将是脚本的退出状态。但是,如果您以后进行检查
pre-commit
,则需要确保退出时出错。否则,在挂接末尾成功执行命令将导致脚本退出,状态为
0



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/645687.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号