[Svnmerge] Help with somewhat complex branch synchronization strategy

Raman Gupta rocketraman at fastmail.fm
Wed Feb 28 09:07:40 PST 2007


MrR08040 wrote:
> Imagine a branch called /A that is branched as /B.  No new changes are
> made to either /A or /B.  Then /B is branched as /C.  Again no new
> changes are made to either /A, /B or /C.
> 
> I'd like to do the following:
> 
> A <-> B (keep A & B sync'ed with each other)
> A <-> C (keep A & C sync'ed with each other)
> B  -> C (keep C     sync'ed with only B)
> 
> [snip]
>
> I wasn't expecting the last line to be printed.  I was expecting
> nothing to be printed like the other "svn avail" commands before it.
> 
> My question: Can svnmerge be used to do what I want to do?  If so, how
> do I do it correctly?

Svnmerge doesn't handle this use case without manual intervention on
your part. The reason is that svnmerge doesn't currently have true
graph merge handling (I would call it transitive merging but there was
some confusion about the meaning of that on another thread).

In your use case, it will treat any revisions in C that came from B as
new revisions for A _even if those revisions on B came from A
originally_, most likely resulting in conflicts.

Cheers,
Raman Gupta



More information about the Svnmerge mailing list