我正在为 PS1 变量修改一些 bash 脚本,以控制我的命令行颜色。如果我在 svn 存储库中,我想做的一件事是在本地文件夹名称之后放置“(svn)”。我如何尝试在我的 .bashrc 中使用此函数来执行此操作,我在设置 PS1 时调用该函数:
function __svn_branch {
local branch=$(svn info | grep URL:)
[ "$branch" != "" ] && echo "(svn)"
}
如果我在 svn 文件夹中,这可以正常工作。但是,如果我去一个非 svn 文件夹,它会触发这个抱怨"svn: '.' is not a working copy"
,这显然很烦人。我不是 bash 脚本专家,任何人都可以看到如何阻止这种情况吗?
谢谢,最大
我想到了另一种方法来判断我是否在 svn 文件夹中,即查找 .svn 目录,但 svn info 似乎更干净。另外,我只是好奇如何停止错误消息,或者以某种方式将其隐藏在我的 bash 脚本中。