我需要使用最新版本(工作副本)标记我的项目。我考虑过使用svn info命令,但我正在进行选择性更新,因此我所拥有的是具有混合版本的工作副本,并且在执行svn信息时它是显示一些旧版本。请帮助标记我的源代码,这是一个混合版本。
我也发现了svnversion,它会有帮助吗? 哪个更适合作业svn info或svnversion
答案 0 :(得分:3)
虽然根据@Ivan Zhakov的回答,svnversion可以很方便,但它不能100%有效,特别是SVN版本7工作副本子文件夹(我只得到结果'导出')
在构建脚本中兼容,我使用svn info。
REVISION=$(svn info | grep -i revision | cut -f2 -d: | tr -d [:space:])
您可以通过
获得类似的“本地修改”标志OUTSTANDING=$(svn status | grep '^[M!DA]')
答案 1 :(得分:1)
svnversion公开了svn info的相同信息(修订号),但总结了。
我总是使用svn info来获取这些信息。
答案 2 :(得分:1)
答案 3 :(得分:0)
要标记混合修订版WC,只需使用WC命令中的副本:
svn copy WC URL -m "Tagged version x.x.x".
svnversion
打印单个版本号,如果工作是单个修订,未修改,未切换且URL与可选TRAIL_URL争论者匹配如果工作
复制是不寻常的版本号会更复杂:
4123:4168 mixed revision working copy
4168M modified working copy
4123S switched working copy
4123P partial working copy, from a sparse checkout
4123:4168MS mixed revision, modified, switched working copy
答案 4 :(得分:-2)
在您的repo网址上应用svn info
,而不是您的工作副本。这肯定是最新的:
svn info http://server/svn/repo
svnversion不是svn命令,它是第三方脚本。它应该使用svn info
来迭代您的工作副本并获得修订。