2012-02-28 82 views
1

开始我读this SO question的方式来恢复中断混帐svn的克隆混帐SVN取。在我的情况下,从svn服务器下载数分钟后总是停止。我已经尝试了一夜之间等待它,但在早上它就是我前一晚离开它的地方。我用cntr-C退出了。 git svn fetch然后从头开始整个下载。显然,这让我无处可去。有什么建议么?恢复的git - svn的克隆:“混帐SVN取”从头开始

+0

它有没有下载任何东西? .git目录是否有任何对象?也许它从来没有真正开始,所以它开始新鲜的时间? – Andy 2012-02-28 15:55:40

+0

是的,它正在下载。 .git有四个或五个大文件和一些零长度的文件。例如:-rw ------- 1 gary staff 1638400 Feb 27 15:53 c4nsiNdijC -rw ------- 1 gary staff 0 Feb 28 09:49 c5lPBJfcAz(对于格式化抱歉,Can' t在评论中放了一个换行符,看来) – garyp 2012-02-28 16:03:56

+0

'git svn fetch'的作品。我当时(现在仍然很困惑),因为在每次重启时,滚动的文件名都是重复的:它们也出现在前两次或三次或四次中。我开始注意到新的文件名滚动,所以我坚持下来,并在重新启动'git svn fetch'15,20次后,我拥有了一切。 – garyp 2012-03-09 19:34:30

回答

0

尝试使用git svn -r <revision range>参数先取部分历史记录。然后,无论是逐个提取更多提交还是将自己限制为浅层svn历史记录。

同时确保您有足够的最新git。

+0

当我做你的建议时,我的应用程序不会建立。我看到两种可能性:1)我需要构建并引入不包含在本回购库中的库(这是与手头问题不同的问题)。 2.)我没有完整的当前头像快照。 'git svn fetch -rxxxx:HEAD'会提供存储库HEAD状态的完整副本,只有较少的历史记录?此外,我无法添加其他历史记录。 'git svn fetch -ryyyy:xxxx'无声地返回。 – garyp 2012-02-28 17:40:41

+0

“svn:externals”不是神奇转向git submodules。您需要手动提供它们。 – 2012-02-28 18:36:32

+0

只是“git svn fetch”应该继续到当前版本。请注意,您通常无法将svn历史扩展到较早的提交(与浅层git克隆不同) – 2012-02-28 18:37:20