Skip to content
  • Martin von Zweigbergk's avatar
    graphlog: use '%' only if there are *unresolved* conflicts · 85b03b1e4715
    Martin von Zweigbergk authored
    In 14d0e89520a2, I made graphlog use '%' for the "other" context when
    there's an existing merge state. However, that has confused many
    people because it shows up even if all conflicts are already resolved,
    which makes it show up even after e.g. `hg update -m` with
    automatically resolved conflicts. This patch makes it so we show the
    '%' only if there still unresolved conflicts.
    
    This patch replaces my earlier attempt in D8930, where I decided to
    automatically clear the mergestate if there are no remaining
    conflicts. That had the problem that it wouldn't let the user
    re-resolve the conflicts using `hg resolve`.
    
    Note that an in-progress "proper" merge (one that will result in a
    commit with two parents, such as after `hg merge`) will already have
    two dirstate parents before the commit happens. That means that both
    sides of the merge will get drawn as '@' in the graph, since "is
    dirstate parent" takes precedence over "is involved in merge
    conflict".
    
    Differential Revision: https://phab.mercurial-scm.org/D9007
    85b03b1e4715