本手册是为了描述 Subversion 1.6.x 系列而编写的。如果您运行的是其他版本的 Subversion,强烈建议您访问 https://svnbook.subversion.org.cn/ 并查阅适合您的 Subversion 版本的手册。
svnversion — 汇总工作副本的本地修订版。
svnversion 是一个用于汇总工作副本的修订版混合情况的程序。最终的修订版号或修订版范围将写入标准输出。
在定义程序的版本号时,在构建过程中使用此输出很常见。
如果存在 TRAIL_URL
,则它是用于确定 WC_PATH
本身是否切换的 URL 的尾部部分(对 WC_PATH
内的切换的检测不依赖于 TRAIL_URL
)。
当 WC_PATH
未定义时,当前目录将用作工作副本路径。如果 WC_PATH
未明确给出,则无法定义 TRAIL_URL
。
与 svnserve 一样,svnversion 没有子命令,只有选项。
--no-newline
(-n
)
从输出中省略通常的尾部换行符。
--committed
(-c
)
使用最后修改的修订版,而不是当前(即本地可用的最高)修订版。
--help
(-h
)
打印帮助摘要。
--version
打印 svnversion 的版本,并退出,无错误。
如果工作副本都处于相同的修订版(例如,在更新后立即),则会打印出该修订版。
$ svnversion 4168
您可以添加 TRAIL_URL
来确保工作副本没有从您预期的切换。请注意,此命令中需要 WC_PATH
。
$ svnversion . /var/svn/trunk 4168
对于混合修订版的工作副本,将打印出存在的修订版范围。
$ svnversion 4123:4168
如果工作副本包含修改,则会添加一个尾部 'M
'
$ svnversion 4168M
如果工作副本已切换,则会添加一个尾部 'S
'
$ svnversion 4168S
svnversion 还会告知您目标工作副本是否为稀疏填充(参见 名为“稀疏目录”的部分)将其输出附加到 'P
' 代码。
$ svnversion 4168P
因此,这里有一个包含一些本地修改的混合修订版、稀疏填充和已切换的工作副本。
$ svnversion 4123:4168MSP
如果在不是工作副本的目录上调用,svnversion 会假定它是一个导出的工作副本,并打印 “导出”
$ svnversion exported