在 Travis-ci 中,我正在使用这个命令。
git push origin HEAD:${TRAVIS_PULL_REQUEST_BRANCH:-$TRAVIS_BRANCH}
这一切都很好除非没有什么可提交的(响应:Everything up-to-date
)。
在我的例子中,这是一个非常好的响应,但它会导致:exited with 1.
这是我想避免的事情。无论它是否真的能够提交 或 如果所有内容都是最新的,我希望响应是 exit 0
。
我该怎么做?
更新:
正如@Mort 在评论中提到的,|| true
有效,但现在我总是 有一个积极的退出状态。我想只更改 Everything up-to-date
的 Git 退出代码。
最佳答案
您的问题并非 Travis 独有,考虑到这一点,这已经得到解答 on this page .但我会在此处重新发布我自己的最受欢迎(和最佳)答案版本,因为我没有足够的声誉将其标记为重复。
因此,您遇到了经典的 exited with a 1
问题,因为您在没有什么可提交的情况下尝试提交。但是如果出现实际问题,您仍然希望它以 1 退出
。只需这样做:如果发现没有可提交的内容,则根本不要运行提交命令。您将事先检查是否有任何提交,如下所示:
git diff-index --quiet HEAD || git commit -am 'Jolly ol commit message'
它非常光滑。
关于git - 如何以持久退出 0 状态进行 git 提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47036884/