Thursday, April 23, 2009

subversion checksum mismatch problem

I got hit with the subversion checksum mismatch error again today. I had faced this problem couple of weeks ago, but just checked out a new copy to avoid fixing the problem at that time. Today I thought I would dig deeper.

I saw two variations:
svn: Checksum mismatch for 'aaa'; expected: 'xxxxx', actual: 'yyy'
And:
Checksum mismatch while updating

I did few searches, and found that people had fairly complex set of steps to fix this. A simpler solution suggested was to check out a clean copy of your files, and then copy over all your changed files from the problem copy to your new copy. This was also painful for me because I had changes all over my working copy, and not just in the problem directory.


After looking at the svn files I found that the easy solution that worked for me (still involved checkout) was to
1. checkout a clean copy
2. for new and your problem checkouts, go to the folder where your svn mismatch error is thrown
3. in that folder, go to .svn folder
4. copy the entries file over from the clean copy.
5. svn cleanup on the problem folder
6. svn update