changeset 534:45ccaba212f9 stable

a better msg for this tricky situation
author Aurelien Campeas <aurelien.campeas@logilab.fr>
date Thu, 30 Aug 2012 13:54:43 +0200
parents 87c41ef95ebf
children 47246c32e0fb
files hgext/evolve.py tests/test-stabilize-result.t
diffstat 2 files changed, 16 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/hgext/evolve.py	Thu Aug 30 13:50:17 2012 +0200
+++ b/hgext/evolve.py	Thu Aug 30 13:54:43 2012 +0200
@@ -1574,8 +1574,14 @@
             repo.ui.status(_("use 'hg resolve' to retry unresolved file merges "
                              "or 'hg update -C .' to abandon\n"))
         if stats[3] > 0:
-            raise util.Abort('GASP! Merge Conflict! You are on you own chap!',
-                hint='/!\\ hg evolve --continue will NOT work /!\\')
+            raise util.Abort('Merge conflict between several amendments, and this is not yet automated',
+                hint="""/!\ You can try:
+/!\ * manual merge + resolve => new cset X
+/!\ * hg up to the parent of the amended changeset (which are named W and Z)
+/!\ * hg revert --all -r X
+/!\ * hg ci -m "same message as the amended changeset" => new cset Y
+/!\ * hg kill -n Y W Z
+""")
         tr = repo.transaction('stabilize-conflicting')
         try:
             repo.dirstate.setparents(conflicting.node(), node.nullid)
--- a/tests/test-stabilize-result.t	Thu Aug 30 13:50:17 2012 +0200
+++ b/tests/test-stabilize-result.t	Thu Aug 30 13:54:43 2012 +0200
@@ -314,6 +314,12 @@
   merging a incomplete! (edit conflicts, then use 'hg resolve --mark')
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
-  abort: GASP! Merge Conflict! You are on you own chap!
-  (/!\ hg evolve --continue will NOT work /!\)
+  abort: Merge conflict between several amendments, and this is not yet automated
+  (/!\ You can try:
+  /!\ * manual merge + resolve => new cset X
+  /!\ * hg up to the parent of the amended changeset (which are named W and Z)
+  /!\ * hg revert --all -r X
+  /!\ * hg ci -m "same message as the amended changeset" => new cset Y
+  /!\ * hg kill -n Y W Z
+  )
   [255]