我想使用命令行签出Subversion中某个文件夹的特定修订。

我没有看到在TortoiseProc.exe中指定修订号的选项,

TortoiseProc.exe /command:checkout <url>

我如何得到我想要的修改?TortoiseProc.exe是我想做的正确的工具吗?


当前回答

SVN签出到修订,其中存储库位于另一台服务器上

使用svn log命令查看哪些版本可用:

svn log

打印:

------------------------------------------------------------------------
r762 | machines | 2012-12-02 13:00:16 -0500 (Sun, 02 Dec 2012) | 2 lines

------------------------------------------------------------------------
r761 | machines | 2012-12-02 12:59:40 -0500 (Sun, 02 Dec 2012) | 2 lines

注意数字r761。命令说明如下:

svn export http://url-to-your-file@761 /tmp/filename

我特别使用了这个命令:

svn export svn+ssh://machines@mywebsite.com/home1/oct/calc/calcFeatures.m@761 calcFeatures.m

这会导致calcFeatures。M修订版761被签出到当前目录。

其他回答

要么

svn checkout url://repository/path@1234

or

svn checkout -r 1234 url://repository/path

似乎可以使用存储库浏览器。点击右上角的修订按钮,将其更改为您想要的修订。然后在浏览器中右键单击文件,并使用“复制到工作副本…”但是要更改它将检出的文件名,以避免冲突。

如果你已经在本地签出了它,那么你可以cd到它被签出的地方,然后使用下面的语法:

$ svn up -rXXXX

参考:从命令行从subversion签出特定的修订

你可以试试

TortoiseProc.exe /command:checkout /rev:1234

得到第1234版。

我不是100%确定/rev选项与签出兼容,但我从一些TortoiseProc文档中得到了这个想法。

您必须直接使用svn:

svn checkout URL[@REV]... [PATH]

and

svn help co

给你更多的帮助。