2012-09-27 33 views
1

我试图克隆与Subversion版本库:致命出错转换的SVN仓库到Git

git svn clone svn://adress/repo --stdlayout 

我得到一个错误周围r119

error

我试图结帐branches/Mikaelr119,而TortoiseSVN告诉我它不存在。

如果我看看日志,我可以看到:

119 : /branches/Mikael added (en empty folder) 
120 : /branches/Mikael deleted 
121 : /branches/Mikael/file.txt added 

我能做些什么?

编辑:我尝试使用Git,1.7.8,1.7.9,1.7.10和1.7.11的其他版本,从一无所有并使用相同的命令开始,他们都未能在r119出于同样的原因。

+0

似乎'git-svn'错误。你有没有尝试过最新版本的'git-svn'? – FooF

+0

我从mySisGit-1.7.11使用git bash – Eildosa

+0

我在克隆的git源码树中尝试过'git diff v1.7.11..master git-svn.perl',并且差异超过了3500行文本(其中很大一部分原因是'git-svn'被模块化,从1.7.11版本开始就将很多东西移动到可重用模块 - 现在有很多'使用Git:SVN:xxx'子句)。 – FooF

回答

0

尝试用--preserve-empty-dirs,因为很明显dir是空的。此外,git svn近来有所改善,我遇到了一个仍然存在于2.2.x中的问题,与开发人员一起工作并应用了一个补丁程序,然后在2.2.x后期(IIRC)中修复了这个问题。需要记住的另一件事是,git希望在区分大小写的文件系统上运行(当然,如果SVN回购托管在区分大小写的文件系统上,至少区分大小写始终是安全的)。因此,如果您在Windows或Mac上,您可能需要创建一个区分大小写的文件系统,或者只需在Linux机器或虚拟机上进行转换。如果您记录了对该分支的更改,显示它已被删除并修改,那么您的SVN回购可能会被破坏。您可能需要跳过它被删除的修订版。如果您尝试了其他所有操作,并且想要跳过修改,请参阅see this post