Patchwork [1,of,3,various] merge: better debug messages before/after invoking external merge tool

login
register
mail settings
Submitter Mads Kiilerich
Date April 13, 2015, 8:25 p.m.
Message ID <dec70e4b55cad0d4f1ef.1428956759@localhost.localdomain>
Download mbox | patch
Permalink /patch/8641/
State Accepted
Headers show

Comments

Mads Kiilerich - April 13, 2015, 8:25 p.m.
# HG changeset patch
# User Mads Kiilerich <mads@kiilerich.com>
# Date 1426800170 -3600
#      Thu Mar 19 22:22:50 2015 +0100
# Node ID dec70e4b55cad0d4f1ef1ed0468e2710cb4d49db
# Parent  52ff737c63d2b2cb41185549aa9c35bc47317032
merge: better debug messages before/after invoking external merge tool
Ryan McElroy - April 14, 2015, 3:48 a.m.
On 4/13/2015 1:25 PM, Mads Kiilerich wrote:
> # HG changeset patch
> # User Mads Kiilerich <mads@kiilerich.com>
> # Date 1426800170 -3600
> #      Thu Mar 19 22:22:50 2015 +0100
> # Node ID dec70e4b55cad0d4f1ef1ed0468e2710cb4d49db
> # Parent  52ff737c63d2b2cb41185549aa9c35bc47317032
> merge: better debug messages before/after invoking external merge tool
>
> diff --git a/mercurial/filemerge.py b/mercurial/filemerge.py
> --- a/mercurial/filemerge.py
> +++ b/mercurial/filemerge.py
> @@ -304,7 +304,10 @@ def _xmerge(repo, mynode, orig, fcd, fco
>           replace = {'local': a, 'base': b, 'other': c, 'output': out}
>           args = util.interpolate(r'\$', replace, args,
>                                   lambda s: util.shellquote(util.localpath(s)))
> -        r = ui.system(toolpath + ' ' + args, cwd=repo.root, environ=env)
> +        cmd = toolpath + ' ' + args
> +        repo.ui.debug('launching merge tool: %s\n' % cmd)
> +        r = ui.system(cmd, cwd=repo.root, environ=env)
> +        repo.ui.debug('merge tool returned: %s\n' % r)
>           return True, r
>       return False, 0
>   
> diff --git a/tests/test-rename-merge2.t b/tests/test-rename-merge2.t
> --- a/tests/test-rename-merge2.t
> +++ b/tests/test-rename-merge2.t
> @@ -100,6 +100,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@e300d1c794ec+ other rev@4ce40f5aca24 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev '*' '*' (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -138,6 +140,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@86a2aa42fc76+ other rev@f4db7e329e71 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * (glob)
> +  merge tool returned: 0
>     1 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -174,6 +178,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@e300d1c794ec+ other rev@bdb19105162a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -208,6 +214,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@02963e448370+ other rev@f4db7e329e71 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -238,6 +246,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@94b33a1b7f2d+ other rev@4ce40f5aca24 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     1 files updated, 1 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -265,6 +275,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@86a2aa42fc76+ other rev@97c705ade336 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 1 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -298,6 +310,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@94b33a1b7f2d+ other rev@bdb19105162a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     1 files updated, 1 files merged, 1 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -324,6 +338,8 @@ args:
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@02963e448370+ other rev@97c705ade336 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 1 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -348,11 +364,15 @@ args:
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@62e7bf090eba+ other b@49b6d8032493 ancestor a@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 2/2 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@62e7bf090eba+ other rev@49b6d8032493 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -388,6 +408,8 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@02963e448370+ other rev@fe905ef2c33e ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     note: possible conflict - a was renamed multiple times to:
>      b
>      c
> @@ -416,11 +438,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@86a2aa42fc76+ other b@af30c7647fc7 ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 2/2 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@86a2aa42fc76+ other rev@af30c7647fc7 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -449,11 +475,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 3/3 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 1 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -481,11 +511,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 3/3 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     1 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -514,11 +548,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 3/3 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 1 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -546,11 +584,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 3/3 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     1 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -577,11 +619,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@0b76e65c8289+ other b@4ce40f5aca24 ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 2/2 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@0b76e65c8289+ other rev@4ce40f5aca24 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -612,11 +658,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@02963e448370+ other b@8dbce441892a ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 3/3 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@02963e448370+ other rev@8dbce441892a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     1 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -646,11 +696,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b
>     my b@0b76e65c8289+ other b@bdb19105162a ancestor b@000000000000
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 3/3 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@0b76e65c8289+ other rev@bdb19105162a ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -680,11 +734,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging a and b to b
>     my b@e300d1c794ec+ other b@49b6d8032493 ancestor a@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 2/2 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@e300d1c794ec+ other rev@49b6d8032493 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -713,11 +771,15 @@ m "um a c" "um x c" "      " "10 do merg
>     picked tool 'python ../merge' for b (binary False symlink False)
>     merging b and a to b
>     my b@62e7bf090eba+ other a@f4db7e329e71 ancestor a@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
> +  merge tool returned: 0
>      rev: versions differ -> m
>     updating: rev 2/2 files (100.00%)
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@62e7bf090eba+ other rev@f4db7e329e71 ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     0 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> @@ -760,6 +822,8 @@ m "nm a b" "um x a" "      " "22 get a,
>     picked tool 'python ../merge' for rev (binary False symlink False)
>     merging rev
>     my rev@02963e448370+ other rev@2b958612230f ancestor rev@924404dff337
> +  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
> +  merge tool returned: 0
>     1 files updated, 2 files merged, 0 files removed, 0 files unresolved
>     (branch merge, don't forget to commit)
>     --------------
> diff --git a/tests/test-up-local-change.t b/tests/test-up-local-change.t
> --- a/tests/test-up-local-change.t
> +++ b/tests/test-up-local-change.t
> @@ -55,6 +55,8 @@
>     picked tool 'true' for a (binary False symlink False)
>     merging a
>     my a@c19d34741b0a+ other a@1e71731e6fbb ancestor a@c19d34741b0a
> +  launching merge tool: true $TESTTMP/r2/a * (glob)
> +  merge tool returned: 0
>     1 files updated, 1 files merged, 0 files removed, 0 files unresolved
>     $ hg parents
>     changeset:   1:1e71731e6fbb
> @@ -76,6 +78,8 @@
>     picked tool 'true' for a (binary False symlink False)
>     merging a
>     my a@1e71731e6fbb+ other a@c19d34741b0a ancestor a@1e71731e6fbb
> +  launching merge tool: true $TESTTMP/r2/a * (glob)
> +  merge tool returned: 0
>     0 files updated, 1 files merged, 1 files removed, 0 files unresolved
>     $ hg parents
>     changeset:   0:c19d34741b0a
> @@ -105,6 +109,8 @@
>     picked tool 'true' for a (binary False symlink False)
>     merging a
>     my a@c19d34741b0a+ other a@1e71731e6fbb ancestor a@c19d34741b0a
> +  launching merge tool: true $TESTTMP/r2/a * (glob)
> +  merge tool returned: 0
>     1 files updated, 1 files merged, 0 files removed, 0 files unresolved
>     $ hg parents
>     changeset:   1:1e71731e6fbb
>
+1, I could see this being useful.
Pierre-Yves David - April 14, 2015, 8:49 p.m.
On 04/13/2015 04:25 PM, Mads Kiilerich wrote:
> # HG changeset patch
> # User Mads Kiilerich <mads@kiilerich.com>
> # Date 1426800170 -3600
> #      Thu Mar 19 22:22:50 2015 +0100
> # Node ID dec70e4b55cad0d4f1ef1ed0468e2710cb4d49db
> # Parent  52ff737c63d2b2cb41185549aa9c35bc47317032
> merge: better debug messages before/after invoking external merge tool

This one is pushed to the clowncopter. Thanks

Patch

diff --git a/mercurial/filemerge.py b/mercurial/filemerge.py
--- a/mercurial/filemerge.py
+++ b/mercurial/filemerge.py
@@ -304,7 +304,10 @@  def _xmerge(repo, mynode, orig, fcd, fco
         replace = {'local': a, 'base': b, 'other': c, 'output': out}
         args = util.interpolate(r'\$', replace, args,
                                 lambda s: util.shellquote(util.localpath(s)))
-        r = ui.system(toolpath + ' ' + args, cwd=repo.root, environ=env)
+        cmd = toolpath + ' ' + args
+        repo.ui.debug('launching merge tool: %s\n' % cmd)
+        r = ui.system(cmd, cwd=repo.root, environ=env)
+        repo.ui.debug('merge tool returned: %s\n' % r)
         return True, r
     return False, 0
 
diff --git a/tests/test-rename-merge2.t b/tests/test-rename-merge2.t
--- a/tests/test-rename-merge2.t
+++ b/tests/test-rename-merge2.t
@@ -100,6 +100,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@e300d1c794ec+ other rev@4ce40f5aca24 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev '*' '*' (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -138,6 +140,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@86a2aa42fc76+ other rev@f4db7e329e71 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * (glob)
+  merge tool returned: 0
   1 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -174,6 +178,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@e300d1c794ec+ other rev@bdb19105162a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -208,6 +214,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@02963e448370+ other rev@f4db7e329e71 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -238,6 +246,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@94b33a1b7f2d+ other rev@4ce40f5aca24 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   1 files updated, 1 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -265,6 +275,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@86a2aa42fc76+ other rev@97c705ade336 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 1 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -298,6 +310,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@94b33a1b7f2d+ other rev@bdb19105162a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   1 files updated, 1 files merged, 1 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -324,6 +338,8 @@  args:
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@02963e448370+ other rev@97c705ade336 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 1 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -348,11 +364,15 @@  args:
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@62e7bf090eba+ other b@49b6d8032493 ancestor a@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 2/2 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@62e7bf090eba+ other rev@49b6d8032493 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -388,6 +408,8 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@02963e448370+ other rev@fe905ef2c33e ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   note: possible conflict - a was renamed multiple times to:
    b
    c
@@ -416,11 +438,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@86a2aa42fc76+ other b@af30c7647fc7 ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 2/2 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@86a2aa42fc76+ other rev@af30c7647fc7 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -449,11 +475,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 3/3 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 1 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -481,11 +511,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 3/3 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   1 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -514,11 +548,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 3/3 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 1 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -546,11 +584,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 3/3 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   1 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -577,11 +619,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@0b76e65c8289+ other b@4ce40f5aca24 ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 2/2 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@0b76e65c8289+ other rev@4ce40f5aca24 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -612,11 +658,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@02963e448370+ other b@8dbce441892a ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 3/3 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@02963e448370+ other rev@8dbce441892a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   1 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -646,11 +696,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b
   my b@0b76e65c8289+ other b@bdb19105162a ancestor b@000000000000
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 3/3 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@0b76e65c8289+ other rev@bdb19105162a ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -680,11 +734,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging a and b to b
   my b@e300d1c794ec+ other b@49b6d8032493 ancestor a@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 2/2 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@e300d1c794ec+ other rev@49b6d8032493 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -713,11 +771,15 @@  m "um a c" "um x c" "      " "10 do merg
   picked tool 'python ../merge' for b (binary False symlink False)
   merging b and a to b
   my b@62e7bf090eba+ other a@f4db7e329e71 ancestor a@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/b * * (glob)
+  merge tool returned: 0
    rev: versions differ -> m
   updating: rev 2/2 files (100.00%)
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@62e7bf090eba+ other rev@f4db7e329e71 ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   0 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
@@ -760,6 +822,8 @@  m "nm a b" "um x a" "      " "22 get a, 
   picked tool 'python ../merge' for rev (binary False symlink False)
   merging rev
   my rev@02963e448370+ other rev@2b958612230f ancestor rev@924404dff337
+  launching merge tool: python ../merge $TESTTMP/t/t/rev * * (glob)
+  merge tool returned: 0
   1 files updated, 2 files merged, 0 files removed, 0 files unresolved
   (branch merge, don't forget to commit)
   --------------
diff --git a/tests/test-up-local-change.t b/tests/test-up-local-change.t
--- a/tests/test-up-local-change.t
+++ b/tests/test-up-local-change.t
@@ -55,6 +55,8 @@ 
   picked tool 'true' for a (binary False symlink False)
   merging a
   my a@c19d34741b0a+ other a@1e71731e6fbb ancestor a@c19d34741b0a
+  launching merge tool: true $TESTTMP/r2/a * (glob)
+  merge tool returned: 0
   1 files updated, 1 files merged, 0 files removed, 0 files unresolved
   $ hg parents
   changeset:   1:1e71731e6fbb
@@ -76,6 +78,8 @@ 
   picked tool 'true' for a (binary False symlink False)
   merging a
   my a@1e71731e6fbb+ other a@c19d34741b0a ancestor a@1e71731e6fbb
+  launching merge tool: true $TESTTMP/r2/a * (glob)
+  merge tool returned: 0
   0 files updated, 1 files merged, 1 files removed, 0 files unresolved
   $ hg parents
   changeset:   0:c19d34741b0a
@@ -105,6 +109,8 @@ 
   picked tool 'true' for a (binary False symlink False)
   merging a
   my a@c19d34741b0a+ other a@1e71731e6fbb ancestor a@c19d34741b0a
+  launching merge tool: true $TESTTMP/r2/a * (glob)
+  merge tool returned: 0
   1 files updated, 1 files merged, 0 files removed, 0 files unresolved
   $ hg parents
   changeset:   1:1e71731e6fbb