Painful user experience with 'hg resolve'

Jason Harris jason at jasonfharris.com
Mon Aug 29 04:58:00 CDT 2011


On Aug 29, 2011, at 7:36 PM, Martin Geisler wrote:

> Matt Mackall <mpm at selenic.com> writes:
> 
>> On Fri, 2011-08-26 at 09:34 +0200, Martin Geisler wrote:
>>> Matt Mackall <mpm at selenic.com> writes:
>>> 
>>> TortoiseHg now defaults to using intermal:merge when do you "hg
>>> merge" and then lets you fix the merge at your own leisure
>>> afterwards. That model makes a lot of sense to me.
>> 
>> Are you telling me that TortoiseHG is sticking conflict markers in
>> files by default now? If so, I frankly think that's tragic: it's
>> always been my goal to avoid a user ever having to see those horrible
>> things again.
>> 
>> Using internal:fail would have deferred the file merges just as well.
> 
> Yes, sorry, they use internal:fail by default. Conflict markers or not
> was not the point, my point was the two-step approach they use.
> 
> I'm mostly working on projects with few and simple merge conflicts, so I
> don't have that much experience with complicated conflicts. Henrik and
> Sune has said before that they regularly solve massive merge conflicts,
> so I guess they have some advice too.

I just wanted to weigh in on what Matt said, and about diffing in general.

My opinion on differs and unified diffs and using text editors for these things
is summed up in a blog post I did:

http://jasonfharris.com/blog/2011/02/unified-diffs-and-gui-clients/

(Disclaimer: of course since I wrote MacHg an OSX GUI for Mercurial I am biased
towards GUI solutions and making things pretty and clear and uncomplicated… But
at least the blog post gives the other side of the coin and might be interesting
to those people who are died in the wool command line / text editor people…)

In short a lot of people use text editors for these things since they are used
to it, even though better tools are readily available… I would encourage people
(on all platforms) to use a good diff tool. Take the 15 minutes or so and set it
up. The same diff tool you use for everyday diffing can be used for merging if
it's a good tool.

(Note for those people who use internal:fail or do hand editing, MacHg solves
the problem of disambiguating resolve by having one menu item "Remerge Selected
Files" and another menu item "Mark Resolved Selected Files"… In fact these are
the menu items that MacHg has had ever since I shipped it…)

Cheers,
  Jas


More information about the Mercurial-devel mailing list