如何在命令行中检出SVN中已删除的项目

我正在尝试签出一个项目,这个项目在修订版401中已经从我的SVN中删除了。这个项目现在已经不存在了,而且已经被代码的重写所取代了,但是我想做一个checkout,以便我可以返回对重写时的旧代码的小块。

据我所知,这应该像检查旧的path和最后的好修订(400)一样简单。 但是当我尝试这个时,我得到一个错误,因为它试图使用最新的修订:

C:\Users\couling\workspace>svn checkout --revision=400 https://svn.domain.com/repos/trunk/OldProject Error validating server certificate for 'https://svn.domain.com:443': - The certificate is not issued by a trusted authority. Use the fingerprint to validate the certificate manually! Certificate information: - Hostname: svn.domain.com - Valid: from Tue, 11 Dec 2012 15:03:33 GMT until Wed, 11 Dec 2013 15:03:33 GMT - Issuer: Personal Certificate, Foomy Whatsit, Blah, Blah, GB - Fingerprint: 01:02:03:04:05:06:07:08:09:10:11:12:13:14:15:16:17:18:19:20 (R)eject, accept (t)emporarily or accept (p)ermanently? t svn: '/repos/!svn/bc/1418/trunk/OldProject' path not found C:\Users\couling\workspace> 

我可以通过networking浏览器轻松浏览修订版本400中的文件夹,所以在最糟糕的情况下,我仍然可以查看代码,但是我更愿意为我的IDE提供所有源文件的副本。

作为参考,我正在使用这个版本的客户端:

 C:\Users\couling\workspace>svn --version svn, version 1.6.16 (r1073529) compiled Mar 8 2011, 11:47:41 Copyright (C) 2000-2009 CollabNet. Subversion is open source software, see http://subversion.apache.org/ This product includes software developed by CollabNet (http://www.Collab.Net/). 

如何查看现在已被删除的文件夹?

编辑

为了消除怀疑….上面的checkout命令使用了语法--revision=400因为这恰好是我在发布之前编写命令的最后一个方法。 这是有效的语法,因为svn命令使用与GNU getopt_long兼容的库。 我使用的版本和以下都是同义词-r 400 -r400 --revision 400 --revision=400 。 不同的变体都被getopt库缩减为单个结果。

发生这种情况的原因是我之前使用的最后一个命令是我经历了所有的变种,以确认它与这个问题没有关系。 他们都有同样的结果。

Solutions Collecting From Web of "如何在命令行中检出SVN中已删除的项目"

svn co --depth=infinity https://svn.domain.com/repos/trunk/OldProject@400

请参阅“SVNBook |挂钩和操作修订”

  1. 当您使用操作修订时,您必须 用空格写入: -r 400
  2. 可以使用PEG-revision un URL而不是OR: https://svn.domain.com/repos/trunk/OldProject@400https://svn.domain.com/repos/trunk/OldProject@400
  3. 为了在没有用户干预的情况下执行操作(对于证书),您可以添加命令

... --non-interactive --trust-server-cert

样品

因为OP坚持要坚持正确而不是RTFM并尝试

先决条件: http ://mayorat.ursinecorner.ru:8088/svn/Hello/branches/Greetings目前HEAD中不存在,但在r16

 svn co -r 16 http://mayorat.ursinecorner.ru:8088/svn/Hello/branches/Greetings svn: E160013: '/svn/Hello/!svn/rvr/37/branches/Greetings' path not found 

 svn co http://mayorat.ursinecorner.ru:8088/svn/Hello/branches/Greetings@16 A Greetings\Hello.txt U Greetings Checked out revision 16. 

 svn co -r=16 http://mayorat.ursinecorner.ru:8088/svn/Hello/branches/ svn: E205000: Syntax error in revision argument '=16' 
  • 根据最后的评论,我必须得到/分支的头,但是

>dir /b

Greetings