如何从命令行签出特定的Subversion修订版?

时间:2009-09-15 18:56:44

标签: svn command-line tortoisesvn

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

我没有在TortoiseProc.exe

中看到指定修订号的选项
TortoiseProc.exe /command:checkout <url>

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

10 个答案:

答案 0 :(得分:458)

如果您已在本地签出,则可以cd到签出地点,然后使用以下语法:

$ svn up -rXXXX

参考:Checkout a specific revision from subversion from command line

答案 1 :(得分:301)

要么

svn checkout url://repository/path@1234

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

答案 2 :(得分:258)

使用TortoiseProc而不仅仅是普通的svn命令行的原因是什么?

我会用:

svn checkout svn://somepath@1234 working-directory

(获得修订版1234)

答案 3 :(得分:34)

你永远不应该使用TortoiseProc.exe作为命令行Subversion客户端! TortoiseProc只能用于自动化TortoiseSVN的GUI。请参阅 note in TortoiseSVN's Manual

  

请记住,TortoiseSVN是一个GUI客户端,以及此自动化指南   向您展示如何使TortoiseSVN对话框显示为收集用户   输入。如果你想编写一个不需要输入的脚本,你   应该使用官方的Subversion命令行客户端。

使用Subversion command-line svn.exe client。使用命令行客户端,您可以

您可能会注意到,使用svn checkoutsvn export,您可以输入REV编号作为--revision REV参数,并在URL之后输入@REV。第一个称为操作修订,第二个称为peg修订。 Read SVNBook for more information about peg and operative revisions concept

答案 4 :(得分:7)

svn checkout到您的存储库位于另一台服务器上的修订版

使用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签出到当前目录。

答案 5 :(得分:6)

我认为这个语法是/rev:<revisionNumber>

可以找到here

的相关文档

答案 6 :(得分:3)

你可以尝试

TortoiseProc.exe /command:checkout /rev:1234

获得修订版1234。

我不是100%确定/rev选项与checkout兼容,但我从某些TortoiseProc documentation得到了这个想法。

答案 7 :(得分:2)

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

答案 8 :(得分:1)

你必须直接使用svn:

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

svn help co

为您提供更多帮助。

答案 9 :(得分:1)

转到文件夹并使用命令:

svn co {url}