[Svnmerge] Error when merging

Daniel Rall dlr at collab.net
Fri Mar 2 17:56:06 PST 2007


On Sat, 03 Mar 2007, STenyaK (Bruno González) wrote:

> I managed to find out that, yes. But i don't know what's really wrong with
> it. Trying a svn info to the 2 dirs in my computer and my mate's computer,
> the returned paths are different (in one computer theres %5C, in the other
> the slash.
> So i guess the problem is either
> a)svn has a bug and uses different chars depending on... localization?
> dunno..

It's most likely a difference in your WCs (the repository root is
retrieved from their using 'svn info').  Are you and your friend using
different Subversion clients, or is one WC older than the other?

> b)svnmerge doesn't check what it should check, or should do some more
> conversions to the paths before they can be compared.

The data it's working with is not in the expected state.  It would be
nice to know how it got into this unusual state...

> I'm no expert in any of the two programs, so i hope someone with more
> knowledge can help...
> Once again, thanks in advance for any help.
> 
> On 3/2/07, Daniel Rall <dlr at collab.net> wrote:
> >
> >On Fri, 02 Mar 2007, STenyaK (Bruno González) wrote:
> >
> >> Hello, i'm new to svnmerge. I'm using it under windows xp, with svn
> >> v1.4.2(r22196), and the
> >> svnmerge.exe linked from the wiki page.
> >> I have no problems merging things on my computer, but a mate gets this
> >error
> >> on his:
> >>
> >> -----------svn merge:
> >> Traceback (most recent call last):
> >>  File "<string>", line 1963, in ?
> >>  File "<string>", line 1958, in main
> >>  File "<string>", line 1452, in __call__
> >>  File "<string>", line 1126, in action_merge
> >>  File "<string>", line 960, in analyze_source_revs
> >>  File "<string>", line 914, in analyze_revs
> >>  File "<string>", line 297, in __init__
> >>  File "<string>", line 757, in target_to_repos_relative_path
> >> AssertionError:
> >> url='file:///\\nts-servidor/proyectossourcesafe$/ceca-svn/trunk'
> >> , root='file:///%5Cnts-servidor/proyectossourcesafe$/ceca-svn'
> >> -----------
> >>
> >> Any idea how to fix this? Thanks in advance!
> >
> >Here's the code that's failing, in the second assert:
> >
> >def target_to_repos_relative_path(target):
> >    """Convert a target (either a working copy path or an URL) into a
> >    repository-relative path."""
> >    root = get_repo_root(target)
> >    url = target_to_url(target)
> >    assert root[-1] != "/"
> >    assert url[:len(root)] == root, "url=%r, root=%r" % (url, root)
> >    return url[len(root):]
> >
> >The assertion is failing because the root isn't a prefix of the url,
> >because of the "%5C" (escape code) in the root.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: </pipermail/svnmerge/attachments/20070303/937e0782/attachment-0001.pgp>


More information about the Svnmerge mailing list