在本地计算机上,使用svnversion
获取subversion存储库的修订号是没有问题的。现在我想从我的在线存储库(使用Apache2的WebDAV)获取修订号。
我试过了:
svnversion http://nick:password@www.myhost.de/svn/test`
在浏览器中它像往常一样工作(只是为了确保没有拼写错误),但svnversion
表示无法找到目录。所以我认为我走错了路。
我如何获得修订号?
答案 0 :(得分:20)
svnversion仅用于工作副本,但查询存储库的一种方法是使用svn info,如下所示:
svn info http://nick:password@www.myhost.de/svn | grep Revision
答案 1 :(得分:9)
在Linux上,如果只需要修订号:
svn info http://nick:password@www.myhost.de/svn/test | grep'^修订版:'| awk'{print $ 2}'
答案 2 :(得分:6)
svn info http://nick:password@www.myhost.de/svn/test
应返回有关远程存储库的信息,包括Revision
答案 3 :(得分:5)
一个方便的AWK单线程,仅获得数字部分:
svn info http://nick:password@www.myhost.de/svn | awk '/Revision:/ { print $2 }'
答案 4 :(得分:5)
On new version of svn (1.9) you can do:
svn info --show-item revision svn://...
18436
This should return only the revision number.
All the grep version will break if your locale is not english.
For previous version, you can try
svn info --xml | grep '<entry' -3 | awk -F '=' '/revision="/ { print $2 }' | grep -o '[0-9]\+'
If you can have the xml2 package a better way is to do:
svn info --xml | xml2 | grep /info/entry/@revision | grep -o '[0-9]\+'