[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: merge reintegrate

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Tue, 04 Mar 2008 13:10:16 +0100

Simon Large wrote:
> On 04/03/2008, Stefan Küng <tortoisesvn_at_gmail.com> wrote:
>> Simon Large wrote:
>> > On 03/03/2008, Stefan Küng <tortoisesvn_at_gmail.com> wrote:
>> >> As of r12255, the merge wizard has a new page for the 'reintegrate'
>> >> feature. That means, the first page in the merge wizard has now three
>> >> radio buttons for the user to choose from.
>> >>
>> >> That means we have to adjust the help/info text for each of the radio
>> >> buttons. Suggestions are welcome!
>> >>
>> >> rev-range merge: should be clear what to use it for
>> >>
>> >> reintegrate: that's the new one. User can specify the source URL (e.g.,
>> >> url of a branch to merge back into the trunk working copy). Nothing else
>> >> has to be specified, the URL is enough. The reintegrate command gathers
>> >> all necessary information itself. But: the working copy must be of depth
>> >> infinite (i.e., no sparse checkouts), it must not have any local
>> >> modifications, switched items or items that have been updated to other
>> >> revisions than HEAD.
>> >
>> > I haven't followed what reintegrate is about on the svn list. The name
>> > doesn't give much of a clue ;-) So this does what? I have made changes
>> > on a branch and I now want to merge all changes which have not been
>> > merged yet back into trunk? Is this the same as 'auto-merge'?
>>
>>
>> Yes. Almost. The reintegrate merge does a much better job and should be
>> faster too. But it does this only if the mentioned conditions are met.
>
> The example we usually give is where you develop a new feature on a
> branch and periodically merge in the trunk changes to keep up-to-date.
> Presumably this is the 'keep-my-branch-in-sync' command for that too.
> Just checking ;-)

Yes, that's the command to use now. The tree merge is now to be used
only for more complicated setups (sparse directories). And the revrange
merge should also only be used for synching branches with trunk if the
conditions for the reintegrate merge can't be met.

>> > Can you detect those conditions you mentioned and suppress the
>> > reintegrate option if they are not met?
>>
>>
>> Yes, I could. But I won't :)
>> I've talked about this with Mark Phippard and told him the same:
>> Those checks are *very* expensive and can take several minutes on big
>> working copies. And since the reintegrate API does those checks too, we
>> would run those checks *twice* (if all conditions are met).
>> I'd rather have the API do the checks and throw an explanation error
>> than running those test myself first just to show an error too.
>>
>> So, why not just use the auto merge?
>> Because the auto merge is not as reliable as the reintegrate merge. Auto
>> merge uses some guessing which is not always what the user wants.
>
> Does that mean that auto-merge is no longer needed/available?

I was thinking of removing that one completely.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.net

Received on 2008-03-04 13:10:33 CET

This is an archived mail posted to the TortoiseSVN Dev mailing list.