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

Re: svn_wc_conflict_result_choose_repos found dangerous?

From: Jack Repenning <jrepenning_at_collab.net>
Date: 2007-07-19 00:20:07 CEST

On Jul 18, 2007, at 5:11 AM, Ben Collins-Sussman wrote:

> On 7/18/07, Erik Huelsmann <ehuels@gmail.com> wrote:
>> Aren't they just 2 different use-cases ('select-theirs-entirely' or
>> 'select-theirs-hunk-wise')?
> I don't know of any VC system that offers both of these options. I've
> only seen users concerned about resolving conflicted hunks; I can't
> imagine a situation where the user would want to resolve conflicted
> hunks *and* toss out other local edits at the same time.

Well, there's always ClearCase ...

And that's always a long story ...

The ClearCase mass-merge tools (as opposed to a single-file explicit
merge) give you some up-front options, and then some in-process
options, that amount to providing considerably more than merely two
options. There's a command-line form ("cleartool findmerge") and
also a GUI form (variously named "cleartool xfindmerge," "cleartool
gfindmerge", and "double-click this icon"). I think the range of
possibilities might be slightly different depending on whether you
start at command line or GUI. (ClearCase talks about the "from" data
and the "to" data, rather than "left" and "right", which is keyed by
the command-line syntax ... "cleartool findmerge -from foo -to bar"
and "cleartool findmerge -to bar -from foo" mean the same thing,
there's no essential left-rightness here.)

At the point where you start the process, you can specify:

  * don't do anything, just tell me what you would have done (the
cognoscenti will ask, "what if there are tree changes meaning it
can't find things that need merging unless it actually merges upper
directories," and the answer is "it misses 'em")

  * do anything you can figure out, but stop (with error return
status) at the first conflict

  * do it all, forcing the "from" changes over top the "to" changes
(this would be a whole-file, not block-by-block, override)

  * do it all, prompting me at the command line when there are
conflicts (only available if you start from the command line, of
course). This is hunk-by-hunk; by default it's conflicts-only; I
think there's an option to do it for every hunk, but I'm not sure

  * do it all, popping a graphical merge window when there are conflicts

In the last case, and maybe the one before (the two "ask me what to
do" cases), you have an additional level of control within the
resolution tool available within the resolution tool to favor one
source or the other for the span of each file individually.

I have often, for example, used the "command line, don't ask me about
conflicts, just smash the 'from' stuff over top the 'to' stuff," as
for example when someone ruins an entire tree's line endings by
botching the CC means for dealing with "the svn:eol-style
problem" (which CC handles very oddly, I SO MUCH prefer svn:eol-style).

Jack Repenning
Chief Technology Officer
CollabNet, Inc.
8000 Marina Boulevard, Suite 600
Brisbane, California 94005
office: +1 650.228.2562
mobile: +1 408.835.8090
raindance: +1 877.326.2337, x844.7461
aim: jackrepenning
skype: jrepenning

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Jul 19 00:19:13 2007

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.