[RFC] A better way to help users understand and resolve confclits

Vincent Ladeuil v.ladeuil+lp at free.fr
Thu Aug 13 15:03:29 BST 2009

>>>>> "Guilhem" == Guilhem Bichot <guilhem at sun.com> writes:


    Guilhem> I think what can enlighten users most is explanations like you wrote:

    Guilhem> bzr resolve --interactive <item>

    Guilhem> <base> is <revid>/<revno>
    Guilhem> <other> wants to create <item> bzr created <item>.moved
    Guilhem> ^^^^^^^^ here I'd be verbose and add "but <item> already exists so"

Yeah, exactly what I had in mind but failed to write, thanks for
pointing it out.

    Guilhem> <this> keeps <item>
    Guilhem> 1) Right, get rid of .moved
    Guilhem> 2) Wrong, .moved is the good one, get rid of <item>
    Guilhem> 3) Abort, let me handle that myself.
    Guilhem> 4) Do nothing, just mark as resolve
    Guilhem> ^^^^^^^^ good, except that I wonder when (4) is acceptable ^^^

In the general case, that choice should always be available. If
the user first chose 3, do something and then come back, he
really want 4.

And yes, there will be times where the user has already tried to
solve the conflict and use bzr resolve --interactive anyway and
I'm not sure we should try to adapt the above messages in that

    Guilhem> Slightly related is this bug report which also falls in the
    Guilhem> category of "better explanations":
    Guilhem> "show base for weave merge"
    Guilhem> https://bugs.edge.launchpad.net/bzr/+bug/40412
    Guilhem> It should not be discussed here, it's just something to keep in mind.

I think it's totally related, I had that in mind when I noted:

+- add more info to Conflict objects:
+  - 
+  - base revid for text conflict

Adding that information may require a format change though...


More information about the bazaar mailing list