我想使用命令行在Subversion中签出文件夹的特定版本。
我没有看到一个选项,在指定的版本号TortoiseProc.exe
,
TortoiseProc.exe /command:checkout <url>
如何获得所需的修订?是TortoiseProc.exe
我想要做的正确工具吗?
我想使用命令行在Subversion中签出文件夹的特定版本。
我没有看到一个选项,在指定的版本号TortoiseProc.exe
,
TortoiseProc.exe /command:checkout <url>
如何获得所需的修订?是TortoiseProc.exe
我想要做的正确工具吗?
Answers:
绝对不要将TortoiseProc.exe用作命令行Subversion客户端!TortoiseProc仅应用于自动化TortoiseSVN的GUI。请参阅《TortoiseSVN手册》中的注释:
请记住,TortoiseSVN是GUI客户端,并且该自动化指南向您展示了如何使TortoiseSVN对话框出现以收集用户输入。如果要编写不需要输入的脚本,则应该使用官方的Subversion命令行客户端。
使用Subversion 命令行svn.exe客户端。使用命令行客户端,您可以
在REV修订版中签出工作副本:
svn checkout --revision REV https://svn.example.com/svn/MyRepo/trunk/
svn checkout https://svn.example.com/svn/MyRepo/trunk/@REV
将本地工作副本更新为REV修订版:
导出(即下载)REV修订版中的文件或开发分支:
svn export --revision REV https://svn.example.com/svn/MyRepo/trunk/
svn export https://svn.example.com/MyRepo/trunk/@REV
您可能会注意到,随着svn checkout
和,svn export
您可以输入REV号作为--revision REV
参数以及@REV
URL的结尾。第一个称为手术修订,第二个称为钉钉修订。阅读SVNBook,了解有关钉子和手术修订概念的更多信息。
使用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被检出到当前目录。
你可以试试
TortoiseProc.exe /command:checkout /rev:1234
获得版本1234。
我不确定100%是否/rev
兼容该选项checkout
,但是我从TortoiseProc文档中得到了这个想法。
您必须直接使用svn:
svn checkout URL[@REV]... [PATH]
和
svn help co
给您更多帮助。