[PATCH] rebase: show resolve status when merge fails

timeless timeless at gmail.com
Thu Oct 14 03:22:21 CDT 2010


When using rebase against a large system where most changes will
succeed, you end up with lots of hard to parse output. I find that I
always want to see the list of unresolved bits, instead of having to
parse lines for the ones that have .rej files, and then strip .rej and
....

# HG changeset patch
# User timeless <timeless at gmail.com>
# Date 1281107222 -10800
# Node ID a64b93a9c49dcc07f64295f3728c0761b5c10b1d
# Parent  fb7049335247fa5dbdcf2ca039f15f55bf40e8af
rebase: show resolve status when merge fails

diff --git a/hgext/rebase.py b/hgext/rebase.py
--- a/hgext/rebase.py
+++ b/hgext/rebase.py
@@ -165,6 +165,7 @@ def rebase(ui, repo, **opts):
                 else:
                     stats = rebasenode(repo, rev, p1, p2, state)
                     if stats and stats[3] > 0:
+                        commands.resolve(ui, repo, list=True)
                         raise util.Abort(_('fix unresolved conflicts with hg '
                                     'resolve then run hg rebase --continue'))
                 updatedirstate(repo, rev, target, p2)
diff --git a/tests/test-rebase-abort.t b/tests/test-rebase-abort.t
--- a/tests/test-rebase-abort.t
+++ b/tests/test-rebase-abort.t
@@ -50,6 +50,7 @@ Conflicting rebase:
   merging common
   warning: conflicts during merge.
   merging common failed!
+  U common
   abort: fix unresolved conflicts with hg resolve then run hg rebase --continue
   [255]

@@ -118,6 +119,7 @@ Rebase and abort without generating new
   merging c
   warning: conflicts during merge.
   merging c failed!
+  U c
   abort: fix unresolved conflicts with hg resolve then run hg rebase --continue
   [255]


More information about the Mercurial-devel mailing list