OK, enabled in 1369896.

--reintegrate forces a 1.7 reintegrate, unconditionally, at the moment; I 
haven't put a deprecation warning in there.

Please let me know if anyone sees unexpected results from merge now.

TODO:

* Revise 'svn merge' help text.

* Checks for 'no local mods' and 'no switched subtrees' aren't currently being 
performed when they should; it needs to wait till after working out which kind 
of merge is required, and then do the strict checks iff it's reintegrate-like.

* Check foreign-repos merges don't try to use the symmetric merge code path.

* Add a JavaHL API version of svn_client_merge_symmetric().

* ambiguity: reintegrate or not (merge_symmetric_tests-18)
  Email thread "Symmetric merge and subtrees".

* Issue #4217 -- reported rev unexpected (merge_tests-78)
  Email thread "Symmetric merge and deleted subtrees".


- Julian



----- Original Message -----
> From: Julian Foad <julianf...@btopenworld.com>
> To: Branko Čibej <br...@wandisco.com>
> Cc: "dev@subversion.apache.org" <dev@subversion.apache.org>
> Sent: Monday, 6 August 2012, 10:23
> Subject: Re: Enabling symmetric merge, and UI details
> 
> Branko Čibej wrote on 3 August 2012:
> 
>>  On 03.08.2012 21:51, Mark Phippard wrote:
>>>   On Fri, Aug 3, 2012 at 3:25 PM, Julian Foad wrote:
>>>>     * Make the '--reintegrate' option mean the user believes
>>>>      a reintegrate-style merge is needed, so check that the
>>>>       previous merge is as expected (that it, in the opposite
>>>>      direction) and bail out if not.
>>> 
>>>   Why do you want to do this?  Just to educate the user that they do not
>>>   need reintegrate?  It does not seem like it would be necessary.  What
>>>   happens today if the user does this?  I guess if --reintegrate does
>>>   the wrong thing today then this makes sense.  But if it basically
>>>   still gives a valid result why bother to make a behavior change in
>>>   what is a deprecated option anyway?
>> 
>>  I concur. Our goal is to make the merge algorithm truly symmetric within
>>  the next release or two, inshallah. In order to get there, the behaviour
>>  of "svn merge" will certainly change in some scenarios, but we 
> obviously
>>  expect that the results will become more correct. As long as we can
>>  argue that any such changes in 1.8 are simply incremental adjustments on
>>  the way towards that goal, it seems a waste of effort to maintain any
>>  kind of special meaning for the --reintegrate option.
>> 
>>  IMO the only thing --reintegrate should do in 1.8 is to issue a warning
>>  about it being deprecated; and in 1.9 it we can silently ignore it.
> 
> You mean --reintegrate should cause 'svn' to do a 1.7 reintegrate merge 
> (and issue a deprecation warning)?  I don't have an opinion on the warning, 
> but doing an old-style reintegrate makes sense: there is no need to make the 
> behaviour of that option more complex like I was suggesting.
> 
> - Julian

Reply via email to