I am afraid you misunderstood my problem, or maybe I misunderstand you solution.
Let's say
.svn/text-base/README.svn-base
got corrupted. For this discussion it is irrelevant "how" it got to
be corrupted. The problem is that now the working copy is in an
unusable state and svn revert should restore it to a working state.
Here are the commands I use (assuming README is underthe version control):
1. chmod u+w .svn/text-base/README.svn-base
Now make some changes:
2. pico .svn/text-base/README.svn-base
Now make some other changes to the proper file:
3. pico README
4. svn up
At revision 185.
5. svn commit -m "ttt"
Sending README
Transmitting file data .svn: Commit failed (details follow):
svn: Checksum mismatch for
'/Users/gregoryberkolaiko/projects/berkment/.svn/text-base/README.svn-base';
expected: '5a6a937b0f8952d6a9c9da4a396e0aa1', actual:
'c92c10f82a4f704133c67def8fde242a'
Now what?
Suppose I am to give up on my changes:
6. rm README
7. svn up
Restored 'README'
At revision 185.
If you inspect README, you notice that it got restored not to the
repository state, but to the local cached state
(in essence, "cp .svn/text-base/README.svn-base README")
svn revert
does exactly the same: uses the corrupted local cached version.
There should be a way to revert the cached version too!
Best wishes,
Gregory
On 20 February 2010 23:21, Chris Withers <chris_at_simplistix.co.uk> wrote:
> Gregory Berkolaiko wrote:
>>
>> Due to some (yet unknown) mistake, my colleague is experiencing a
>> "checksum mismatch" error message. Is there a civilized way to
>> recover from such a mismatch. The solutions I found posted on the web
>> are all klutches: the mildest being "check out a fresh copy,
>> substitute the text-base file causing the conflict" and the worst
>> being "svn delete then svn add".
>
> I just svn up'd and the problem went away :-S
>
> Chris
>
> --
> Simplistix - Content Management, Batch Processing & Python Consulting
> - http://www.simplistix.co.uk
>
Received on 2010-02-21 13:26:53 CET