3

My Subversion 1.7.17 working copy is unhappy with a particular file but is unable to update it. Any attempt to update gives me the same error, even if I delete the file or delete the directory:

Updating 'trunk/src/Makefile':
svn: E155017: Checksum mismatch for '/Volumes/project/dev/torc/trunk/src/Makefile':
   expected:  78ee11ff73f3b68c903db838b6667ec3
   recorded:  62bbbf4362958e3fd42470650d5b4eb6

I have read through SVN - Checksum mismatch while updating, and its two main solutions are to modify .svn/entries or to delete and restore the directory. There is nothing useful in the top-level .svn/entries file under 1.7, and deleting and restoring the directory did not fix my problem. Does anybody have other suggestions?

Community
  • 1
  • 1
Neil Steiner
  • 729
  • 1
  • 7
  • 17
  • 1
    You *do* have .svn directories when using 1.7. There's one per checkout, and it's at the root of the checkout. It's typically marked as hidden, so make sure you can see hidden files/folders. – Patrick Quirk Oct 23 '14 at 14:06
  • possible duplicate of [SVN - Checksum mismatch while updating](http://stackoverflow.com/questions/10352934/svn-checksum-mismatch-while-updating) – Patrick Quirk Oct 23 '14 at 14:07
  • @PatrickQuirk, you're right about the one .svn directory at the root of the working copy. But the entries file inside it is basically empty, and the large wc.db file that I see isn't human readable. That's also why I felt that http://stackoverflow.com/questions/10352934/svn-checksum-mismatch-while-updating didn't apply for Subversion 1.7. – Neil Steiner Oct 25 '14 at 00:20

4 Answers4

8

This might be an older question, but I would like to share how I resolved it without checking out the entire (multiple GB) repository. I hope it helps people that have the same problem.

I'm using TortoiseSVN on Windows.

  1. Open the Repo-Browser by right-clicking on the file's parent folder and selecting TortoiseSVN > Repo-Browser
  2. In the repo-browser, right-click on your file, Select Update item to Revision
  3. In the Drop-Down menu Update Depth, select Exclude, click OK. This removes the checksum entry from your local repository database.
  4. Delete the file in the Explorer (trashbin), update your repository
  5. Go back to "Update item to Revision", for Update Depth select Working Copy
  6. Update your repository again

Everything should be back to normal.

3

I'm using Subversion 1.7+ client(Tortoise), and did solve this problem by two simple execution:

a. svn update --set-depth=empty

b. svn update --set-depth=infinity

Pls remind that step a will delete all your local files in this folder! So keep in mind that make a copy firstly.

1

In my case the problem was in corruption of the .svn/pristine folder, and I solved it by replacing the whole that folder with another one from a clean working copy.

I use SVN 1.8.4 under Cygwin.

Steps to fix the issue:

  • back up modifications, if any
  • back up .svn/pristine (in the root folder of the w.c. in trouble)
  • prepare reference w.c: ('svn commit/revert; svn update')
  • replace .svn/pristine in trouble with one from reference w.c.
  • enjoy :)
it-alien
  • 408
  • 5
  • 8
0

It's easy. Copy the problem file in your machine to other directory. Remove from your machine the problem file and commit. Make a svn up on the server. Now, return the file to inicial directory, make a add and commit. And make a new svn up on the server. Problem its resolved.