代码之家  ›  专栏  ›  技术社区  ›  Pit Digger

乌龟SVN校验和错误

  •  0
  • Pit Digger  · 技术社区  · 13 年前

    我有这个奇怪的SVN问题。当我尝试提交时,我有一个文件,它显示了以下错误。

    Some resources were not updated.
    svn: Checksum mismatch for 'C:\Users\xxx\workspace\Accounts1\.svn\text-base\manage_report.jsp.svn-base'; expected: 'd32ed2ae778b684ee496adc1386c2a6d', recorded: '25bb91909b02c117c206b5ad1ac5aa5b'
    

    我试图从SVN中删除那个文件并添加一个新文件,但我仍然得到了同样的错误。我也试过清理。

    造成这种情况的原因是什么?感谢您提供的任何解决方案。

    1 回复  |  直到 13 年前
        1
  •  2
  •   Lynn Crumbling    13 年前

    我真的很讨厌复制粘贴指向解决方案的URL,作为问题的答案,但这个博客有一篇很长的文章:

    http://andrew.hedges.name/blog/2009/01/25/how-to-recover-from-checksum-mismatch-errors-in-svn

    基本上,在他的博客中,他说:

    1.Check out the latest revision of the corrupted directory into a temporary directory
    2.Delete the munged SVN revision files
    3.Copy the correct SVN revision files into the working directory
    

    现在,他的方向是mac,但是。。。

    • 代替 Terminal.app 具有 cmd.exe
    • 代替 ls -la 具有 dir
    • 代替 rm * 具有 del *.*
    • 代替 cp * 具有 copy *.*

    就我个人而言,在继续之前,我会复制整个签出目录。此外,请阅读他的警告/免责声明。


    编辑:更新

    此外,这篇博客文章上的一条评论也有很多优点:

    这是一种愚蠢的方式。

    为什么不直接签入您可以的文件,移动您的工作副本目录 在某个地方,进行更新以获得新的工作副本,最后进行复制 将剩余的文件放入新的工作副本中。删除旧工作 复制完成。无需担心.svn目录。

    为什么要嫁给一个破产的复制品?把它扔掉。