0

我遇到了这个奇怪的 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 中删除该文件并添加一个新文件,但我仍然收到相同的错误。我也试过清理。

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

4

1 回答 1

2

我真的很讨厌复制和粘贴指向解决方案的 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.appcmd.exe
  • 替换ls -ladir
  • 替换rm *del *.*
  • 替换cp *copy *.*

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


编辑:更新

此外,该博客文章中的一条评论有很多优点:

这是一种愚蠢的方式。

为什么不尽可能检查文件,将工作副本目录移动到某个地方,进行更新以获取新的工作副本,最后将剩余的文件复制到新的工作副本中。删除旧的工作副本。完毕。无需担心 .svn 目录。

为什么要嫁给一个破烂的工作副本?干脆放弃吧。

于 2012-10-01T16:11:27.820 回答