SVN到Git镜像:git svn fetch-> Checksum不匹配

时间:2018-11-28 07:04:28

标签: git svn version-control

我以某种方式设法损坏了我以前的git svn镜子,该镜子已经工作了很多年了。但是,我现在必须重新创建整个文件夹,这时我被困住了。

因此,由于先前的git svn clone由于远程断开连接而失败,因此我进入了该文件夹,并尝试继续使用git svn fetch。到目前为止,一切都很好。这些修订继续下载,直到我找到一个非常特定的修订-而且,这是目前唯一引起问题的修订。

我想在这里恢复对镜子的维护:https://github.com/IngwiePhoenix/FLTK.git 来自其网站http://fltk.org

上所述的官方SVN存储库

我得到的错误:

Checksum mismatch: branches/branch-1.1/fluid/icons/fluid.xcf.gz
expected: 68ce7be0b4a104b1c80a7c4dab0bad65
    got: aff1fbaf96ad04ae629fa0ea25d12595

我已经尝试了几种“解决方案”: -通过git svn log跟踪更改,并使用reset -rX -p回滚,然后再次获取。 -实际上,我删除了整个内容,只是彻底尝试了git svn clone(尽管我的下游情况非常好,但是远程主机似乎没有最大的上游...因此,下载了4000修订需要永远)。 -使用git checkout进入remotes/git-svn并重新设定基准。 -在所有步骤之间使用git gcgit svn gc-可能比我真正需要的次数更多。

无论我尝试什么,在这种非常提交的情况下,整个总线都只是停止并导致正面崩溃。哦,也:无法识别给定的文件。运行git svn log $mismatchFile告诉我,给定的文件未被识别,我应该添加两个破折号(--)。这样做,然后再次运行该命令,只绘制一行破折号即可。退出代码为0。

有人知道我该如何解决吗?我真的很想重新开始镜像该项目,以便可以再次将其用作Git子模块。

1 个答案:

答案 0 :(得分:1)

使用 just svn(将git排除在方程之外)会给我:

> svn co http://seriss.com/public/fltk/fltk/branches/branch-1.1/fluid/icons
A    icons/fluid-128.png
A    icons/fluid-16.png
A    icons/fluid-16i.png
A    icons/fluid-256.png
A    icons/fluid-32.png
A    icons/fluid-32.xpm
A    icons/fluid-32i.png
A    icons/fluid-48.png
A    icons/fluid-64.png
A    icons/fluid-96.xpm
A    icons/fluid.ico
svn: E200014: Checksum mismatch for '/tmp/icons/fluid.xcf.gz':
   expected:  68ce7be0b4a104b1c80a7c4dab0bad65
     actual:  aff1fbaf96ad04ae629fa0ea25d12595

所以我想他们的回购协议已损坏。我认为git-svn不可能处理甚至svn拒绝处理的事情。