[Svnmerge] Remembering --bidirectional status
Michael Haggerty
mhagger at alum.mit.edu
Fri Nov 10 12:22:16 PST 2006
Blair Zajac wrote:
> Daniel Rall wrote:
>> On Thu, 09 Nov 2006, Blair Zajac wrote:
>> ...
>>> However, how is the svn merge tracking in 1.5 or greater going to
>>> work? Is it always going to effectively have the -b flag set?
>>
>> Yes.
>>
>>> We had this discussion before, but I would much rather see the -b
>>> flag always set to reduce the possibility of errors. If the svn 1.5
>>> merge tracking will always have bidirectional support on, then I
>>> think svnmerge.py should too.
>>
>> I tend to think so, too. Why is bi-directional support in svnmerge.py
>> off by default (other than it being added later on); does it result in
>> a performance problem?
>
> Yes. IIRC, Giovanni had performance concerns about using bidirectional
> support with svn repositories that aren't on the LAN. I was outvoted :)
One problem is that currently to enable bidirectional merging, one has
to set svnmerge properties on both of the directories involved in the
exchange. This is awkward to do via a working copy because typically
one doesn't have a working copy that contains both directories.
Would the following be a decent approach with good backwards portability?
- "svnmerge.py init" can be invoked only on single directories, and
allows merging *into* that directory. To enable bidirectional merging,
one has to run "svnmerge.py init" in each of the directories (each time
setting the other directory as the merge source).
- All other merge commands check whether "svnmerge.py init" has been
invoked in both directories involved in the merge. If so, it assumes
the --bidirectional option. If not, then it reverts to the current
default behavior.
In the case of non-bidirectional merging, this approach of course
requires an extra propget.
Michael
More information about the Svnmerge
mailing list