我希望能够提取文件的不同版本。
颠覆是否支持允许这样做的协议?如果没有,我可以查看哪些文档来弄清楚如何列出和检索文件的不同版本?
你有几个选择:
你没有提到你正在编写脚本的语言。大多数语言都有自己的 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
它将为您提供所有各种子命令。此外,在线 Subversion 手册解释了命令行的工作原理。