我希望能够提取不同版本的文件。
subversion是否支持允许此操作的协议?如果没有,我可以查看哪些文档来确定如何列出和检索文件的不同版本?
答案 0 :(得分:2)
您有多种选择:
您没有提及您脚本的语言。大多数语言都有自己的Subversion接口。 Java可以使用SVNkit或JavaHL。 C可以直接使用C API。 C#有SVN.net。 Python有Pysvn。 Perl有SVN::Client。
以下是如何通过Unix / Linux / Mac中的标准命令行获取文件的特定版本:
$ svn cat -r$SVN_REVISION $URL_TO_FILE_NAME > $FILE_NAME
svn cat
命令打印出您想要的文件。 -r
指定Subversion修订版(否则,HEAD
- 将使用该分支上的最新版本)。
还要记住,如果您根据标记提取文件,则不需要-r
参数,因为URL包含您想要的标记。要根据标记提取文件:
$ svn cat $SERVER_URL/tags/$TAG_NAME/$PATH_TO_FILE > $FILE_NAME
客户端程序称为svn
,svn help
将为您提供所有各种子命令。此外,online Subversion Manual解释了命令行的工作原理。