SubWCRev是Windows的命令行工具,可以阅读Subversion工作副本的状态,可以在模版中随意执行关键字替换。这通常是构建过程的一部分,将工作副本信息结合到创建的对象当中。通常情况下,可能是用来将修订版本号存入“关于”窗口。
SubWCRev阅读工作副本中所有文件的状态,缺省会忽略外部引用。它记录找到的最高修订版本号,以及那个修订版本的提交时间戳,它也会记录在本地工作副本是否有修改,或混合的修订版本。修订版本号码,更新修订版本范围和修改状态会显示在标准输出。
SubWCRev.exe从命令行或脚本中运行,使用命令行参数控制。
SubWCRev WorkingCopyPath [SrcVersionFile DstVersionFile] [-nmdfe]
WorkingCopyPath
是要检查的工作副本路径,你可以只对工作副本使用SubWCRev,而不是直接对版本库,这个路径可以是绝对路径,也可以是工作目录的相对路径。
如果你想让SubWCRev执行关键字替换,象版本库版本,地址等字段保存到文本文件,就需要提供一个模版文件SrcVersionFile
,输出文件DstVersionFile
就是模版替换之后的版本。
有几个开关影响 SubWCRev工作。如果使用多个,必须用单个组指定,例如要用-nm
,不能用-n -m
。
表 6.1. 列出可用的命令行开关
切换 | 描述 |
---|---|
-n | 如果给出这个开关,当工作副本包含本地修改时,SubWCRev 就会以ERRORLEVEL 7退出。它可以用来在有未提交的修改时阻止构建。 |
-m | 如果给出这个开关,当工作副本包含混合版本时,SubWCRev 就会以ERRORLEVEL 8退出。它可以用来在部分更新本地目录时阻止构建。 |
-d | 如果给出这个开关,当目的文件存在时时,SubWCRev 就会以ERRORLEVEL 9退出。 |
-f | 如果给出这个开关,SubWCRev 就会包含文件夹的最后修改版本。默认行为是取得版本号时只考虑文件。 |
-e | 如果给出这个开关,SubWCRev 就会检查包含svn:externals的目录,但是只限于在同一版本库。默认行为是忽略外部引用。 |