On Fri, Nov 21, 2008 at 12:09 PM, Tobias Schäfer <tobiasschaefer_at_gmx.de> wrote:
> On Friday 21 November 2008 15:51:44 Julian Foad wrote:
>> Slightly off-topic, hence top-posting.
>>
>> I see this error sometimes. Most recently it was when I tried "svn
>> switch" to a mis-typed URL. It's annoying because I don't know what
>> "target" refers to: it could be the URL I gave or the WC path I gave or
>> some sub-path within the tree.
>>
>> I have just committed (r34305) the attach patch which puts the path in
>> the error message. It works for the "switch" problem above. I haven't
>> tried it with your scenario. Perhaps you could, if you are able to
>> re-build the server. (It's a server-side error message.)
>>
>> It doesn't fix the problem, of course.
>
> I've updated to revision 34311 of Subversion.
>
> It now outputs:
> svn: Target path '/trunk' does not exist
>
> This is only true in the state of revision 4 of the reproduction recipe -
> but should not be relevant as the branch was created in revision 6.
>
> As you stated: the problem is not solved by your change.
Tobias,
I think I found the problem. When we calculate what part of a merge
source (i.e. merge_source_t) to merge to a WC target we look at the
target's explicit or inherited mergeinfo and its history (e.g.
implicit mergeinfo) when deciding what has already been merged and
what remains to be merged. In most cases the implicit mergeinfo
covers a contiguous range, but in your example this is not the case:
Merge target 'branches\1.0':
Explicit or Inherited Mergeinfo:
None
Implicit Mergeinfo:
/branches/1.0:6-7
/trunk:2,5
It's that gap in the mergeinfo for trunk that is causing the problem.
We are trying to merge it, which causes the error you see. We should
be ignoring it.
Working on a fix right now.
Paul
Received on 2008-11-21 20:06:49 CET