Cannot resolve Subversion 1.7 checksum mismatch error on update

久未见 提交于 2019-12-22 10:48:30

问题


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?


回答1:


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.




回答2:


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 :)



回答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.




回答4:


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.



来源:https://stackoverflow.com/questions/26529916/cannot-resolve-subversion-1-7-checksum-mismatch-error-on-update

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!