svn co WHAT_GOES_HERE?
由于这两个签出已存在于我的一台服务器上,是否有办法获取最初从中签出它们的仓库的URL?
#1 楼
通过在任何检出的目录中运行以下命令,可以获取您所在目录的URL以及存储库根目录和其他信息:svn info
如果您想要一个仅返回存储库URL的命令(也许供脚本使用),则可以传递以下参数:
svn info --show-item repos-root-url
这是值得的注意
--show-item
在Subversion 1.9+中可用。在较旧的版本中,可以使用以下代码段来达到类似的结果:svn info | grep 'Repository Root' | awk '{print $NF}'
#2 楼
对于SVN 1.7,我不得不使用svn info | grep '^URL' | awk '{print $NF}'
我希望这对其他使用新版SVN的人有所帮助
评论
接受的答案仍适用于编译于2013年4月13日14:22:38的svn版本1.7.9(r1462340)。
–dash17291
13年5月18日在21:14
@ dash17291,它“正常工作”,因为它可以打印出一些内容,但信息不正确。它返回存储者所不想要的回购根。根不是回购网址(至少通常不是)。有了以上答案,您将获得repourl.com/root vs我的,在那里您将获得repourl.com/root/branch/branch_name或任何您已签出的内容。
–JoshStrange
13年5月20日在13:19
这也使用svn 1.8.10匹配“相对URL”。 grep应该更改为grep“ ^ URL”
– Burhan Ali
15年8月3日,11:29
#3 楼
无需grep,只需使用AWK进行搜索并分隔字符串svn info | awk '/^URL/{print }'
评论
Windows的相同之处:svn信息| findstr / C:“存储库根目录:”
– s3v1
2012年10月11日9:53
要获取存储库的相对路径(除根URL外还有用):svn info --show-item relative-url
–伊莱贾·洛夫格伦(Elijah Lofgren)
17-10-11在20:42