如何检查当前目录是否正在使用SVN?

时间:2016-02-19 10:03:07

标签: bash

我有以下脚本:

parse_svn_repo(){
    svn info | grep 'Relative URL' | awk '{print $NF}'
}

如果文件夹使用SVN,则返回文件夹的当前Relative URL。我需要此脚本仅在当前文件夹使用SVN时才返回此URL。它目前只运行一次。

我设置如下:

PS1="$(parse_svn_repo)"

如何将其打印到终端?

1 个答案:

答案 0 :(得分:1)

可能旧的方法不再起作用了,所以我们必须发明新方法。

对于最近的SVN,你必须检查命令的返回码。 所以函数将是这样的:

 parse_svn_repo(){
     local url;
     url=$(svn info 2>&1 | grep 'Relative URL');
     if [ $? -eq 0 ]; then
         echo $url | awk '{print $NF}';
     else
         echo "Default Prompt> ";
     fi;
 }

这样的提示看起来很丑陋,但我认为当你进入存储库时,你会调整案例的提示