我试图在 shell 脚本 (linux/bash) 中包含一系列标准步骤,但似乎无法弄清楚如何判断 svn status
的执行是否返回了任何内容。例如
~/sandbox/$svn status
? pat/foo
~/sandbox/$echo $?
0
如果我删除 foo 文件,那么
svn status
什么都不返回,但是 echo $?
仍然是 0
如果有未提交的更改,我不想执行某些步骤。
不胜感激。
最佳答案
为什么不测试 svn status -q
的结果?像这样的东西:
result=`svn status -q`
[ -z "$result" ] && echo "No changes" && exit 1
echo "Changes found"
exit 0
如果您在您的存储库中使用 svn:externals
,请查看下面的评论和答案以了解其他方法。
关于SVN:和 bash:如何判断是否有未提交的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2693467/