gpt4 book ai didi

git - 从 shell 脚本检查 git push 的响应

转载 作者:太空狗 更新时间:2023-10-29 13:28:11 35 4
gpt4 key购买 nike

如果我的 git push 成功,我会尝试从 bash 中检测。我之前在我的脚本中检查本地更改是这样的:

if [ -z "$(git status --porcelain)" ]; then

而且效果很好。这是我试过的表达式,但这个表达式不起作用,实际上它出错了:

if [ "$(git push --porcelain)" -eq "Done" ]; then

产量:

Done: integer expression expected

当我从命令行运行 git push --porcelain 时,输出为 Done。这是否意味着我应该在我的情况下检查该文本?

如果我进行之前的比较,那也不起作用,我得到同样的错误:

1 file changed, 309 insertions(+)
Current branch master is up to date.
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 3.59 KiB | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
bash: [: To https://github.com/blah...
refs/heads/master:refs/heads/master 88aff43..cf0c97c
Done: integer expression expected

最佳答案

git push 成功时返回零退出代码,失败时返回非零退出代码。

所以你可以这样写:

if git push
then
echo "git push succeeded"
else
echo "git push failed"
fi

关于git - 从 shell 脚本检查 git push 的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40177013/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com