我已经将我的svn repo克隆到git中并且每天我正在进行git svn fetch(我只对SVN进行更改)但是我打算转到git并且我保持git repo同步到svn clone之后的那一天太过我2周了(是的,这是一个很大的回购)。
无论如何,git svn fetch每天都运行良好,直到2天前我现在得到了
Incomplete data: Delta source ended unexpectedly at /usr/lib/perl5/site_perl/Git/SVN/Ra.pm line 290
在特定修订版中。我在网上尝试了不同的建议,关于git svn reset和返回一些修订版本,我回复了大约20个版本,没有运气。我也尝试过:
git config --get core.autocrlf
给了true
。
我知道svn repo工作正常,我没有问题。
我有什么想法可以回到正轨再次同步?我不知道该尝试什么。
我可能会揭露一个问题。我不记得了,但在运行问题之前,我可能在磁盘上有一个磁盘满,当我尝试获取时回购。也许这会摧毁一些东西?
/ donnib
答案 0 :(得分:1)
Fetch应该从 SomeSVNRevisionNumberBeforeTheProblematicOne 继续。
发生这种情况的最可能原因是在同一个存储库上同时运行的两个git实例之间的并发性。
答案 1 :(得分:0)
有时使用--ignore-paths
会有所帮助,因此步骤如下:
git svn reset -r <svn-version-before-error>
git svn fetch --ignore-paths=/branches/badbranch
答案 2 :(得分:0)
我使用-r参数解决了类似的问题。我的情况如下:
# .git/config
[svn-remote "svn"]
url = http://some-repo/path
fetch = /trunk:refs/remotes/trunk
fetch = branches/dev:refs/remotes/dev