[PATCH 1 of 2] pull: doesn't suggest running hg merge when added heads are on different branches

Kevin Berridge kevin.w.berridge at gmail.com
Mon Mar 28 20:27:50 CDT 2011


# HG changeset patch
# User Kevin Berridge <kevin.w.berridge at gmail.com>
# Date 1299894192 18000
# Node ID 74e518e0dc1418c01584cd7efb9bda53e97fb7e2
# Parent  1bb2a56a9d73b386378564381807fdf8df38ea3f
pull: doesn't suggest running hg merge when added heads are on different branches

After a pull when a new head is added but no head is added on the current branch, the "run 'hg merge'" message can be misleading.  This patch doesn't output the merge message in that scenario.

diff -r 1bb2a56a9d73 -r 74e518e0dc14 mercurial/commands.py
--- a/mercurial/commands.py	Thu Mar 10 13:43:47 2011 +0100
+++ b/mercurial/commands.py	Fri Mar 11 20:43:12 2011 -0500
@@ -2891,7 +2891,10 @@
         else:
             ui.status(_("not updating, since new heads added\n"))
     if modheads > 1:
-        ui.status(_("(run 'hg heads' to see heads, 'hg merge' to merge)\n"))
+        if (len(repo.branchheads()) > 1):
+            ui.status(_("(run 'hg heads' to see heads, 'hg merge' to merge)\n"))
+        else:
+            ui.status(_("(run 'hg heads' to see heads)\n"))
     else:
         ui.status(_("(run 'hg update' to get a working copy)\n"))
 
diff -r 1bb2a56a9d73 -r 74e518e0dc14 tests/test-pull-branch.t
--- a/tests/test-pull-branch.t	Thu Mar 10 13:43:47 2011 +0100
+++ b/tests/test-pull-branch.t	Fri Mar 11 20:43:12 2011 -0500
@@ -134,3 +134,30 @@
   not updating, since new heads added
   (run 'hg heads' to see heads, 'hg merge' to merge)
 
+Make changes on new branch on tt
+
+  $ hg branch branchC
+  marked working directory as branch branchC
+  $ echo b1 > bar 
+  $ hg ci -Am "commit on branchC"
+  adding bar
+
+Make changes on default branch on t
+
+  $ cd ../t
+  $ hg up -C default
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ echo a1 > bar 
+  $ hg ci -Am "commit on default"
+  adding bar
+
+Pull branchC from tt
+
+  $ hg pull ../tt
+  pulling from ../tt
+  searching for changes
+  adding changesets
+  adding manifests
+  adding file changes
+  added 1 changesets with 1 changes to 1 files (+1 heads)
+  (run 'hg heads' to see heads)


More information about the Mercurial-devel mailing list