[Svnmerge] Regression in Dustin's inter-repository patches?

Dustin J. Mitchell dustin at zmanda.com
Mon Aug 13 06:05:19 PDT 2007


On Sun, Aug 12, 2007 at 03:38:29PM -0400, Juan Manuel Palacios wrote:
> svnmerge: command execution failed (exit code: 1)
> svn merge --force -r 27517:27711 http://svn.macports.org/repository/macports/trunk/base .
> U    Makefile.in
> U    ChangeLog
> U    src/Makefile.in
> svn: Access scheme mixtures not yet supported ('http://svn.macports.org/repository/macports/trunk/base/src/registry2.0' and 'svn://localhost/macports/trunk/base/src')
<snip>
> 	But I'm not sure if that's just the official repo information and if it reflects Dustin's latest (I believe still uncommitted) changes. In any case, I'd been using svnmerge.py to 
> merge from the official, http served, MacPorts repository back into my local, svnserve served, copy until just now without experiencing the above conflict, an apparent reluctance 
> to mix access protocols. And it's also even more confusing because the merge does actually start, hinting that it can in fact handle http:// and svn:// mixtures in a merge.... but 
> then fails.

Juan -- thanks for the report!

This is acutally a known limitation in svn itself.  While you can merge
updates ("U") between schemes without a problem, svn doesn't yet support
this for adds ("A").

I've been thinking of taking a crack at fixing that in svn at some
point, but that's obvioulsy a fairly large learning curve.

At this point, to do a merge containing adds, you need to use the '-M'
flag to svnmerge to update the properties, then create a patch (with
'svn diff'), apply it (with 'patch'), and manually svn add/svn delete
any added/deleted files.  It's annoying, I know -- I have to do it once
every few days.

Dustin

-- 
        Dustin J. Mitchell
        Storage Software Engineer, Zmanda, Inc.
        http://www.zmanda.com/



More information about the Svnmerge mailing list