Merge with crew
authorMatt Mackall <mpm@selenic.com>
Mon, 19 Oct 2009 23:53:25 -0500
changeset 9617 fafd653134d0
parent 9606 69f8ac71ded1 (current diff)
parent 9616 0fedf8233b21 (diff)
child 9618 d75a309a24b1
Merge with crew
mercurial/commands.py
--- a/hgext/patchbomb.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/hgext/patchbomb.py	Mon Oct 19 23:53:25 2009 -0500
@@ -76,9 +76,11 @@
 from mercurial.i18n import _
 from mercurial.node import bin
 
-def prompt(ui, prompt, default=None, rest=': ', empty_ok=False):
+def prompt(ui, prompt, default='', rest=': ', empty_ok=False):
     if not ui.interactive():
-        return default
+        if default or empty_ok:
+            return default
+        raise util.Abort(_("%sPlease enter a valid value" % (prompt+rest)))
     if default:
         prompt += ' [%s]' % default
     prompt += rest
@@ -331,8 +333,7 @@
                 subj = '[PATCH %0*d of %d %s] ' % (tlen, 0, len(patches), flag)
             else:
                 subj = '[PATCH %0*d of %d] ' % (tlen, 0, len(patches))
-            subj += opts.get('subject') or prompt(ui, 'Subject:', rest=subj,
-                                                    default='None')
+            subj += opts.get('subject') or prompt(ui, 'Subject:', rest=subj)
 
             body = ''
             if opts.get('diffstat'):
--- a/mercurial/archival.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/archival.py	Mon Oct 19 23:53:25 2009 -0500
@@ -7,6 +7,7 @@
 
 from i18n import _
 from node import hex
+import cmdutil
 import util
 import cStringIO, os, stat, tarfile, time, zipfile
 import zlib, gzip
@@ -217,9 +218,25 @@
     archiver = archivers[kind](dest, prefix, mtime or ctx.date()[0])
 
     if repo.ui.configbool("ui", "archivemeta", True):
-        write('.hg_archival.txt', 0644, False,
-              lambda: 'repo: %s\nnode: %s\n' % (
-                  hex(repo.changelog.node(0)), hex(node)))
+        def metadata():
+            base = 'repo: %s\nnode: %s\nbranch: %s\n' % (
+                hex(repo.changelog.node(0)), hex(node), ctx.branch())
+
+            tags = ''.join('tag: %s\n' % t for t in ctx.tags()
+                           if repo.tagtype(t) == 'global')
+            if not tags:
+                repo.ui.pushbuffer()
+                opts = {'template': '{latesttag}\n{latesttagdistance}',
+                        'style': '', 'patch': None, 'git': None}
+                cmdutil.show_changeset(repo.ui, repo, opts).show(ctx)
+                ltags, dist = repo.ui.popbuffer().split('\n')
+                tags = ''.join('latesttag: %s\n' % t for t in ltags.split(':'))
+                tags += 'latesttagdistance: %s\n' % dist
+
+            return base + tags
+
+        write('.hg_archival.txt', 0644, False, metadata)
+
     for f in ctx:
         ff = ctx.flags(f)
         write(f, 'x' in ff and 0755 or 0644, 'l' in ff, ctx[f].data)
--- a/mercurial/commands.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/commands.py	Mon Oct 19 23:53:25 2009 -0500
@@ -2901,11 +2901,14 @@
     st = list(repo.status(unknown=True))[:7]
     ms = merge_.mergestate(repo)
     st.append([f for f in ms if f == 'u'])
-    labels = _('modified added removed deleted unknown ignored unresolved')
+    labels = [_('%d modified files'), _('%d added files'),
+              _('%d removed files'), _('%d deleted files'),
+              _('%d unknown files'), _('%d ignored files'),
+              _('%d unresolved files')]
     t = []
-    for i,l in enumerate(labels.split()):
-        if st[i]:
-            t.append('%d %s' % (len(st[i]), l))
+    for s,l in zip(st, labels):
+        if s:
+            t.append(l % len(s))
 
     t = ', '.join(t)
 
--- a/mercurial/dirstate.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/dirstate.py	Mon Oct 19 23:53:25 2009 -0500
@@ -100,7 +100,7 @@
         files = [self._join('.hgignore')]
         for name, path in self._ui.configitems("ui"):
             if name == 'ignore' or name.startswith('ignore.'):
-                files.append(os.path.expanduser(path))
+                files.append(util.expandpath(path))
         return ignore.ignore(self._root, files, self._ui.warn)
 
     @propertycache
--- a/mercurial/dispatch.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/dispatch.py	Mon Oct 19 23:53:25 2009 -0500
@@ -248,7 +248,7 @@
         args = aliasargs(i[0]) + args
         defaults = ui.config("defaults", cmd)
         if defaults:
-            args = shlex.split(defaults) + args
+            args = map(util.expandpath, shlex.split(defaults)) + args
         c = list(i[1])
     else:
         cmd = None
@@ -477,8 +477,7 @@
         output = ui.config('profiling', 'output')
 
         if output:
-            path = os.path.expanduser(output)
-            path = ui.expandpath(path)
+            path = ui.expandpath(output)
             ostream = open(path, 'wb')
         else:
             ostream = sys.stderr
--- a/mercurial/extensions.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/extensions.py	Mon Oct 19 23:53:25 2009 -0500
@@ -30,7 +30,7 @@
 
 def loadpath(path, module_name):
     module_name = module_name.replace('.', '_')
-    path = os.path.expanduser(path)
+    path = util.expandpath(path)
     if os.path.isdir(path):
         # module/__init__.py style
         d, f = os.path.split(path.rstrip('/'))
--- a/mercurial/hg.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/hg.py	Mon Oct 19 23:53:25 2009 -0500
@@ -307,7 +307,6 @@
             dest_repo.ui.setconfig('paths', 'default', abspath)
 
             if update:
-                dest_repo.ui.status(_("updating working directory\n"))
                 if update is not True:
                     checkout = update
                 for test in (checkout, 'default', 'tip'):
@@ -318,6 +317,8 @@
                         break
                     except error.RepoLookupError:
                         continue
+                bn = dest_repo[uprev].branch()
+                dest_repo.ui.status(_("updating to branch %s\n") % bn)
                 _update(dest_repo, uprev)
 
         return src_repo, dest_repo
--- a/mercurial/ui.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/ui.py	Mon Oct 19 23:53:25 2009 -0500
@@ -179,7 +179,7 @@
             user = os.environ.get("EMAIL")
         if user is None and self.configbool("ui", "askusername"):
             user = self.prompt(_("enter a commit username:"), default=None)
-        if user is None:
+        if user is None and not self.interactive():
             try:
                 user = '%s@%s' % (util.getuser(), socket.getfqdn())
                 self.warn(_("No username found, using '%s' instead\n") % user)
@@ -198,10 +198,12 @@
 
     def _path(self, loc):
         p = self.config('paths', loc)
-        if p and '%%' in p:
-            self.warn("(deprecated '%%' in path %s=%s from %s)\n" %
-                    (loc, p, self.configsource('paths', loc)))
-            p = p.replace('%%', '%')
+        if p:
+            if '%%' in p:
+                self.warn("(deprecated '%%' in path %s=%s from %s)\n" %
+                          (loc, p, self.configsource('paths', loc)))
+                p = p.replace('%%', '%')
+            p = util.expandpath(p)
         return p
 
     def expandpath(self, loc, default=None):
--- a/mercurial/util.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/mercurial/util.py	Mon Oct 19 23:53:25 2009 -0500
@@ -1158,6 +1158,7 @@
             _rcpath = []
             for p in os.environ['HGRCPATH'].split(os.pathsep):
                 if not p: continue
+                p = expandpath(p)
                 if os.path.isdir(p):
                     for f, kind in osutil.listdir(p):
                         if f.endswith('.rc'):
@@ -1250,3 +1251,6 @@
     for chunk in iterator:
         for line in chunk.splitlines():
             yield line
+
+def expandpath(path):
+    return os.path.expanduser(os.path.expandvars(path))
--- a/setup.py	Mon Oct 19 00:36:52 2009 -0500
+++ b/setup.py	Mon Oct 19 23:53:25 2009 -0500
@@ -97,7 +97,21 @@
 except ImportError:
     pass
 
-version = None
+def runcmd(cmd):
+    p = subprocess.Popen(cmd, stdout=subprocess.PIPE,
+                         stderr=subprocess.PIPE, env=env)
+    out, err = p.communicate()
+    # If root is executing setup.py, but the repository is owned by
+    # another user (as in "sudo python setup.py install") we will get
+    # trust warnings since the .hg/hgrc file is untrusted. That is
+    # fine, we don't want to load it anyway.
+    err = [e for e in err.splitlines()
+           if not e.startswith('Not trusting file')]
+    if err:
+        return ''
+    return out
+
+version = ''
 
 if os.path.isdir('.hg'):
     # Execute hg out of this directory with a custom environment which
@@ -113,34 +127,28 @@
         # error 0xc0150004. See: http://bugs.python.org/issue3440
         env['SystemRoot'] = os.environ['SystemRoot']
     cmd = [sys.executable, 'hg', 'id', '-i', '-t']
-
-    p = subprocess.Popen(cmd, stdout=subprocess.PIPE,
-                         stderr=subprocess.PIPE, env=env)
-    out, err = p.communicate()
-
-    # If root is executing setup.py, but the repository is owned by
-    # another user (as in "sudo python setup.py install") we will get
-    # trust warnings since the .hg/hgrc file is untrusted. That is
-    # fine, we don't want to load it anyway.
-    err = [e for e in err.splitlines()
-           if not e.startswith('Not trusting file')]
-    if err:
-        sys.stderr.write('warning: could not establish Mercurial '
-                         'version:\n%s\n' % '\n'.join(err))
+    l = runcmd(cmd).split()
+    while len(l) > 1 and l[-1][0].isalpha(): # remove non-numbered tags
+        l.pop()
+    if len(l) > 1: # tag found
+        version = l[-1]
+        if l[0].endswith('+'): # propagate the dirty status to the tag
+            version += '+'
+    elif len(l) == 1: # no tag found
+        cmd = [sys.executable, 'hg', 'parents', '--template',
+               '{latesttag}+{latesttagdistance}-']
+        version = runcmd(cmd) + l[0]
+    if version.endswith('+'):
+        version += time.strftime('%Y%m%d')
+elif os.path.exists('.hg_archival.txt'):
+    kw = dict([t.strip() for t in l.split(':', 1)]
+              for l in open('.hg_archival.txt'))
+    if 'tag' in kw:
+        version =  kw['tag']
+    elif 'latesttag' in kw:
+        version = '%(latesttag)s+%(latesttagdistance)s-%(node).12s' % kw
     else:
-        l = out.split()
-        while len(l) > 1 and l[-1][0].isalpha(): # remove non-numbered tags
-            l.pop()
-        if l:
-            version = l[-1] # latest tag or revision number
-            if version.endswith('+'):
-                version += time.strftime('%Y%m%d')
-elif os.path.exists('.hg_archival.txt'):
-    hgarchival = open('.hg_archival.txt')
-    for line in hgarchival:
-        if line.startswith('node:'):
-            version = line.split(':')[1].strip()[:12]
-            break
+        version = kw.get('node', '')[:12]
 
 if version:
     f = open("mercurial/__version__.py", "w")
--- a/tests/test-acl.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-acl.out	Mon Oct 19 23:53:25 2009 -0500
@@ -4,7 +4,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 3 changes to 3 files
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
 Extension disabled for lack of a hook
--- a/tests/test-archive	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-archive	Mon Oct 19 23:53:25 2009 -0500
@@ -108,6 +108,14 @@
     echo 'rev-0.tar created'
 fi
 
+echo '% test .hg_archival.txt'
+hg archive ../test-tags
+cat ../test-tags/.hg_archival.txt
+hg tag -r 2 mytag
+hg tag -r 2 anothertag
+hg archive -r 2 ../test-lasttag
+cat ../test-lasttag/.hg_archival.txt
+
 hg archive -t bogus test.bogus
 
 echo % server errors
--- a/tests/test-archive.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-archive.out	Mon Oct 19 23:53:25 2009 -0500
@@ -57,6 +57,17 @@
 test-TIP/baz/bletch
 test-TIP/foo
 rev-0.tar created
+% test .hg_archival.txt
+repo: daa7f7c60e0a224faa4ff77ca41b2760562af264
+node: 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e
+branch: default
+latesttag: null
+latesttagdistance: 3
+repo: daa7f7c60e0a224faa4ff77ca41b2760562af264
+node: 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e
+branch: default
+tag: anothertag
+tag: mytag
 abort: unknown archive type 'bogus'
 % server errors
 % empty repo
--- a/tests/test-bundle-r.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-bundle-r.out	Mon Oct 19 23:53:25 2009 -0500
@@ -163,7 +163,7 @@
 6 changesets found
 1 changesets found
 1 changesets found
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % 2
 2:d62976ca1e50
@@ -219,7 +219,7 @@
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 (branch merge, don't forget to commit)
 7 changesets found
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 adding changesets
 adding manifests
--- a/tests/test-bundle.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-bundle.out	Mon Oct 19 23:53:25 2009 -0500
@@ -146,9 +146,9 @@
 adding manifests
 adding file changes
 added 4 changesets with 4 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 ====== Log -R full.hg in partial
 changeset:   8:836ac62537ab
@@ -269,7 +269,7 @@
 adding manifests
 adding file changes
 added 9 changesets with 7 changes to 4 files (+1 heads)
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 changeset:   8:836ac62537ab
 tag:         tip
@@ -296,7 +296,7 @@
 added 1 changesets with 1 changes to 1 files
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 ====== test for 540d1059c802
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 searching for changes
 1 changesets found
--- a/tests/test-clone-pull-corruption.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-clone-pull-corruption.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,4 +1,4 @@
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../source
 transaction abort!
--- a/tests/test-clone-r.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-clone-r.out	Mon Oct 19 23:53:25 2009 -0500
@@ -30,7 +30,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -42,7 +42,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -54,7 +54,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 3 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -66,7 +66,7 @@
 adding manifests
 adding file changes
 added 4 changesets with 4 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -78,7 +78,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -90,7 +90,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 3 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -102,7 +102,7 @@
 adding manifests
 adding file changes
 added 4 changesets with 5 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -114,7 +114,7 @@
 adding manifests
 adding file changes
 added 5 changesets with 6 changes to 3 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -126,7 +126,7 @@
 adding manifests
 adding file changes
 added 5 changesets with 5 changes to 2 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-clone.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-clone.out	Mon Oct 19 23:53:25 2009 -0500
@@ -6,7 +6,7 @@
 .hg/store/data/b.i
 
 % default operation
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 a
 checking changesets
@@ -25,13 +25,13 @@
 
 % default destination
 destination directory: a
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 a
 
 % check that we drop the file:// from the path before
 % writing the .hgrc
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
 % check that path aliases are expanded
@@ -43,7 +43,7 @@
 adding manifests
 adding file changes
 added 11 changesets with 11 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -52,5 +52,5 @@
 2 files, 11 changesets, 11 total revisions
 
 % clone to .
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
--- a/tests/test-convert-splicemap.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-convert-splicemap.out	Mon Oct 19 23:53:25 2009 -0500
@@ -7,7 +7,7 @@
 % test invalid splicemap
 abort: syntax error in splicemap(1): key/value pair expected
 % splice repo2 on repo1
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 scanning source...
 sorting...
--- a/tests/test-default-push.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-default-push.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,7 +1,7 @@
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % push should push to default when default-push not set
 pushing
--- a/tests/test-empty-group.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-empty-group.out	Mon Oct 19 23:53:25 2009 -0500
@@ -16,14 +16,14 @@
 adding manifests
 adding file changes
 added 4 changesets with 3 changes to 3 files
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 requesting all changes
 adding changesets
 adding manifests
 adding file changes
 added 4 changesets with 3 changes to 3 files
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 comparing with b
 searching for changes
--- a/tests/test-empty.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-empty.out	Mon Oct 19 23:53:25 2009 -0500
@@ -6,7 +6,7 @@
 00changelog.i
 requires
 store
-updating working directory
+updating to branch default
 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-extension.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-extension.out	Mon Oct 19 23:53:25 2009 -0500
@@ -7,7 +7,7 @@
 ui == repo.ui
 reposetup called for b
 ui == repo.ui
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 uisetup called
 Bar
--- a/tests/test-fetch.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-fetch.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,8 +1,8 @@
 % test fetch with default branches only
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 adding b
 1:97d72e5f12c7
@@ -16,9 +16,9 @@
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1:97d72e5f12c7
 adding c
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % should merge c into a
 pulling from ../a
@@ -61,9 +61,9 @@
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 new changeset 3:... merges remote changes with local
 Automated merge with http://localhost:20059/
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 adding f
 adding g
@@ -89,9 +89,9 @@
 created new head
 
 % pull in change on foreign branch
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -105,9 +105,9 @@
 2
 
 % pull in changes on both foreign and local branches
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -124,9 +124,9 @@
 
 % pull changes on foreign (2 new heads) and local (1 new head) branches
 % with a local change
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -149,9 +149,9 @@
 7
 % pull in changes on foreign (merge of local branch) and local (2 new
 % heads) with a local change
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -172,7 +172,7 @@
 3
 % pull in change on different branch than dirstate
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 marked working directory as branch topic
 abort: working dir not at branch tip (use "hg update" to check out branch tip)
@@ -184,7 +184,7 @@
 adding b
 marked working directory as branch default
 adding c
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % fetch should succeed
 pulling from ../ib1
@@ -192,7 +192,7 @@
 no changes found
 % test issue1726
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../i1726r1
 searching for changes
--- a/tests/test-filebranch.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-filebranch.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 creating base
-updating working directory
+updating to branch default
 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
 creating branch a
 creating branch b
--- a/tests/test-flags.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-flags.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,4 +1,4 @@
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../test1
 requesting all changes
--- a/tests/test-globalopts.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-globalopts.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,6 +1,6 @@
 adding a
 adding b
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../b
 searching for changes
--- a/tests/test-hgrc.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-hgrc.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 hg: config error at .../t/.hg/hgrc:1: 'invalid'
-updating working directory
+updating to branch default
 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 [paths]
 default = .../foo%bar
--- a/tests/test-hook.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-hook.out	Mon Oct 19 23:53:25 2009 -0500
@@ -3,7 +3,7 @@
 0:29b62aeb769f
 commit hook: HG_NODE=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b HG_PARENT1=0000000000000000000000000000000000000000 
 commit.b hook: HG_NODE=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b HG_PARENT1=0000000000000000000000000000000000000000 
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 precommit hook: HG_PARENT1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b 
 pretxncommit hook: HG_NODE=b702efe9688826e3a91283852b328b84dbf37bc2 HG_PARENT1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b HG_PENDING=$HGTMP/test-hook/a 
@@ -109,7 +109,7 @@
 abort: preoutgoing.forbid hook exited with status 1
 preoutgoing hook: HG_SOURCE=clone 
 outgoing hook: HG_NODE=0000000000000000000000000000000000000000 HG_SOURCE=clone 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 preoutgoing hook: HG_SOURCE=clone 
 preoutgoing.forbid hook: HG_SOURCE=clone 
--- a/tests/test-http-clone-r.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-http-clone-r.out	Mon Oct 19 23:53:25 2009 -0500
@@ -33,7 +33,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -45,7 +45,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -57,7 +57,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 3 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -69,7 +69,7 @@
 adding manifests
 adding file changes
 added 4 changesets with 4 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -81,7 +81,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -93,7 +93,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 3 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -105,7 +105,7 @@
 adding manifests
 adding file changes
 added 4 changesets with 5 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -117,7 +117,7 @@
 adding manifests
 adding file changes
 added 5 changesets with 6 changes to 3 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -129,7 +129,7 @@
 adding manifests
 adding file changes
 added 5 changesets with 5 changes to 2 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-http-proxy.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-http-proxy.out	Mon Oct 19 23:53:25 2009 -0500
@@ -3,7 +3,7 @@
 streaming all changes
 XXX files to transfer, XXX bytes of data
 transferred XXX bytes in XXX seconds (XXX XB/sec)
-updating working directory
+updating to branch default
 XXX files updated, XXX files merged, XXX files removed, XXX files unresolved
 checking changesets
 checking manifests
@@ -16,7 +16,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -29,7 +29,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 %% proxy url with user name and password
 requesting all changes
@@ -37,7 +37,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 %% url with user name and password
 requesting all changes
@@ -45,7 +45,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 %% bad host:port for proxy
 abort: error: Connection refused
@@ -55,7 +55,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 XXX "GET http://localhost:/?pairs=0000000000000000000000000000000000000000-0000000000000000000000000000000000000000&cmd=between HTTP/1.1" - -
 XXX "GET http://localhost:/?cmd=capabilities HTTP/1.1" - -
--- a/tests/test-http.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-http.out	Mon Oct 19 23:53:25 2009 -0500
@@ -7,7 +7,7 @@
 streaming all changes
 XXX files to transfer, XXX bytes of data
 transferred XXX bytes in XXX seconds (XXX XB/sec)
-updating working directory
+updating to branch default
 XXX files updated, XXX files merged, XXX files removed, XXX files unresolved
 checking changesets
 checking manifests
@@ -20,7 +20,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 4 changes to 4 files
-updating working directory
+updating to branch default
 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % clone via pull
 requesting all changes
@@ -28,7 +28,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 4 changes to 4 files
-updating working directory
+updating to branch default
 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-import.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-import.out	Mon Oct 19 23:53:25 2009 -0500
@@ -6,7 +6,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../tip.patch
 % message should be same
@@ -19,7 +19,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../tip.patch
 line2
@@ -29,7 +29,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../tip.patch
 abort: empty commit message
@@ -39,7 +39,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../tip.patch
 % import of plain diff with specific date and user
@@ -48,7 +48,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../tip.patch
 changeset:   1:ca68f19f3a40
@@ -73,7 +73,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../tip.patch
 diff -r 80971e65b431 a
@@ -88,7 +88,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying tip.patch
 % import from stdin
@@ -97,7 +97,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying patch from stdin
 % override commit message
@@ -106,7 +106,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying patch from stdin
 summary:     override
@@ -116,7 +116,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../msg.patch
 user:        email patcher
@@ -127,7 +127,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying patch from stdin
 % plain diff in email, subject, no message body
@@ -136,7 +136,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying patch from stdin
 % plain diff in email, no subject, no message body, should fail
@@ -145,7 +145,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying patch from stdin
 abort: empty commit message
@@ -155,7 +155,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying patch from stdin
 summary:     second change
@@ -165,7 +165,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying patch from stdin
 email patch
@@ -184,7 +184,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../../../tip.patch
 % message should be 'subdir change'
--- a/tests/test-incoming-outgoing.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-incoming-outgoing.out	Mon Oct 19 23:53:25 2009 -0500
@@ -305,7 +305,7 @@
 date:        Mon Jan 12 13:46:40 1970 +0000
 summary:     8
 
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-issue1306.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-issue1306.out	Mon Oct 19 23:53:25 2009 -0500
@@ -26,7 +26,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 2 changes to 2 files
-updating working directory
+updating to branch br
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 changeset:   2:1630aed6ed2b
 branch:      br
@@ -41,7 +41,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 changeset:   0:cb9a9f314b8b
 user:        test
@@ -54,7 +54,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 2 changes to 2 files
-updating working directory
+updating to branch br
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 changeset:   1:234f53e6c5ff
 branch:      br
--- a/tests/test-keyword.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-keyword.out	Mon Oct 19 23:53:25 2009 -0500
@@ -280,7 +280,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 3 changes to 3 files
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % incoming
 comparing with test-keyword/Test
--- a/tests/test-lock-badness.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-lock-badness.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 adding b
 pushing to ../a
--- a/tests/test-manifest-merging.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-manifest-merging.out	Mon Oct 19 23:53:25 2009 -0500
@@ -2,7 +2,7 @@
 % create alpha in first repo
 adding alpha
 % clone foo-base to foo-work
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % create beta in second repo
 adding beta
--- a/tests/test-merge10.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-merge10.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,4 +1,4 @@
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../a
 searching for changes
--- a/tests/test-merge6.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-merge6.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,8 +1,8 @@
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../B1
 searching for changes
--- a/tests/test-merge7.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-merge7.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,4 +1,4 @@
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../test-a
 searching for changes
--- a/tests/test-merge8.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-merge8.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,4 +1,4 @@
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../a
 searching for changes
--- a/tests/test-mq-pull-from-bundle.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-mq-pull-from-bundle.out	Mon Oct 19 23:53:25 2009 -0500
@@ -18,7 +18,7 @@
 ====== Bundle queue
 1 changesets found
 ====== Clone base
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 ====== Incoming queue bundle
 >> hg -R .hg/patches incoming ../queue.hgq
@@ -41,7 +41,7 @@
 >> hg qseries
 two.patch
 ====== Clone base again
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 ====== Unbundle queue bundle
 >> hg -R .hg/patches unbundle --update ../queue.hgq
--- a/tests/test-mq-qclone-http.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-mq-qclone-http.out	Mon Oct 19 23:53:25 2009 -0500
@@ -20,7 +20,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 3 changes to 3 files
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 a
@@ -45,7 +45,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 3 changes to 3 files
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 a
@@ -70,7 +70,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 3 changes to 3 files
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 a
--- a/tests/test-mq.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-mq.out	Mon Oct 19 23:53:25 2009 -0500
@@ -56,7 +56,7 @@
 
 use "hg -v help mq" to show aliases and global options
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 adding b/z
 % qinit
@@ -520,7 +520,7 @@
     rev 0: add foo
 patch repo:
     rev 0: checkpoint
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 main repo:
@@ -533,7 +533,7 @@
     rev 0: add foo
 patch repo:
     rev 0: checkpoint
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 main repo:
--- a/tests/test-mv-cp-st-diff.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-mv-cp-st-diff.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,4 +1,4 @@
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 ** rename in working dir **
@@ -120,7 +120,7 @@
 +y1
 
 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 ** copy in working dir **
@@ -259,7 +259,7 @@
 +y1
 
 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 ** single rename **
@@ -396,7 +396,7 @@
 +y1
 
 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 ** single copy **
@@ -568,7 +568,7 @@
 +y1
 
 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 ** rename chain **
@@ -694,7 +694,7 @@
 +y1
 
 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 ** copy chain **
@@ -937,7 +937,7 @@
 +y1
 
 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 ** circular rename **
@@ -1061,7 +1061,7 @@
 +y1
 
 
-updating working directory
+updating to branch default
 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
 moving x/x to y/x
--- a/tests/test-notify-changegroup.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-notify-changegroup.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 % clone
-updating working directory
+updating to branch default
 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % commit
 adding a
--- a/tests/test-notify.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-notify.out	Mon Oct 19 23:53:25 2009 -0500
@@ -61,7 +61,7 @@
 % commit
 adding a
 % clone
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % commit
 % pull (minimal config)
--- a/tests/test-patch.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-patch.out	Mon Oct 19 23:53:25 2009 -0500
@@ -5,7 +5,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 applying ../a.diff
 Using custom patch
--- a/tests/test-patchbomb	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-patchbomb	Mon Oct 19 23:53:25 2009 -0500
@@ -152,6 +152,9 @@
 hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \
   -r 0:1 | fixheaders
 
+hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \
+  -s test -r 0:1 | fixheaders
+
 echo "% test single flag for single patch"
 hg email --date '1970-1-1 0:1' -n --flag fooFlag -f quux -t foo -c bar -s test \
   -r 2 | fixheaders
--- a/tests/test-patchbomb.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-patchbomb.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1177,17 +1177,20 @@
 +ff2c9fa2018b15fa74b33363bda9527323e2a99f two
 +ff2c9fa2018b15fa74b33363bda9527323e2a99f two.diff
 
+abort: Subject:[PATCH 0 of 2] Please enter a valid value
+This patch series consists of 2 patches.
+
 This patch series consists of 2 patches.
 
 
 Write the introductory message for the patch series.
 
 
-Displaying [PATCH 0 of 2] None ...
+Displaying [PATCH 0 of 2] test ...
 Content-Type: text/plain; charset="us-ascii"
 MIME-Version: 1.0
 Content-Transfer-Encoding: 7bit
-Subject: [PATCH 0 of 2] None
+Subject: [PATCH 0 of 2] test
 Message-Id: <patchbomb.60@
 In-Reply-To: <baz>
 References: <baz>
--- a/tests/test-paths.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-paths.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,2 +1,2 @@
-updating working directory
+updating to branch default
 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
--- a/tests/test-pull-http.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-pull-http.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % expect error, cloning not allowed
 abort: authorization failed
--- a/tests/test-pull-permission.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-pull-permission.out	Mon Oct 19 23:53:25 2009 -0500
@@ -3,7 +3,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-pull-pull-corruption.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-pull-pull-corruption.out	Mon Oct 19 23:53:25 2009 -0500
@@ -3,7 +3,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../source2
 pulling from ../source1
--- a/tests/test-pull-update.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-pull-update.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 adding foo
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % should fail
 pulling from ../tt
--- a/tests/test-pull.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-pull.out	Mon Oct 19 23:53:25 2009 -0500
@@ -9,7 +9,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-push-hook-lock.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-push-hook-lock.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,7 +1,7 @@
 adding foo
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pushing to ../2
 searching for changes
--- a/tests/test-push-http.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-push-http.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % expect ssl error
 pushing to http://localhost/
--- a/tests/test-push-warn	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-push-warn	Mon Oct 19 23:53:25 2009 -0500
@@ -125,19 +125,19 @@
 
 echo % checking prepush logic does not allow silently pushing multiple new heads
 cd ..
-hg init g
-echo init > g/init
-hg -R g ci -Am init
-echo a > g/a
-hg -R g ci -Am a
-hg clone g h
-hg -R g up 0
-echo b > g/b
-hg -R g ci -Am b
+hg init h
+echo init > h/init
+hg -R h ci -Am init
+echo a > h/a
+hg -R h ci -Am a
+hg clone h i
 hg -R h up 0
-echo c > h/c
-hg -R h ci -Am c
-hg -R h push g
+echo b > h/b
+hg -R h ci -Am b
+hg -R i up 0
+echo c > i/c
+hg -R i ci -Am c
+hg -R i push h
 echo
 
 exit 0
--- a/tests/test-push-warn.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-push-warn.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,4 +1,4 @@
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pushing to ../a
 searching for changes
@@ -24,7 +24,7 @@
 adding file changes
 added 2 changesets with 1 changes to 1 files
 adding foo
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 created new head
@@ -125,18 +125,17 @@
 added 2 changesets with 2 changes to 1 files
 0
 % checking prepush logic does not allow silently pushing multiple new heads
-abort: repository g already exists!
 adding init
 adding a
-updating working directory
-3 files updated, 0 files merged, 0 files removed, 0 files unresolved
-1 files updated, 0 files merged, 2 files removed, 0 files unresolved
+updating to branch default
+2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+0 files updated, 0 files merged, 1 files removed, 0 files unresolved
 adding b
 created new head
-1 files updated, 0 files merged, 2 files removed, 0 files unresolved
+0 files updated, 0 files merged, 1 files removed, 0 files unresolved
 adding c
 created new head
-pushing to g
+pushing to h
 searching for changes
 abort: push creates new remote heads!
 (did you forget to merge? use push -f to force)
--- a/tests/test-rebase-pull.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-rebase-pull.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,6 +1,6 @@
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
 % Now b has one revision to be pulled from a
--- a/tests/test-rename-after-merge.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-rename-after-merge.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,7 +1,7 @@
 % create source repository
 adding a
 % fork source repository
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 adding b
 % update source repository
--- a/tests/test-rename-dir-merge2.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-rename-dir-merge2.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 adding a/f
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 moving a/f to b/f
 adding a/aa/g
--- a/tests/test-revlog-group-emptyiter.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-revlog-group-emptyiter.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,7 +1,7 @@
 # -- setting up base repo
 adding a
 # -- cloning base repo
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 # -- setting up cset to push
 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-simple-update.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-simple-update.out	Mon Oct 19 23:53:25 2009 -0500
@@ -4,7 +4,7 @@
 crosschecking files in changesets and manifests
 checking files
 1 files, 1 changesets, 1 total revisions
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 pulling from ../branch
--- a/tests/test-ssh-clone-r.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-ssh-clone-r.out	Mon Oct 19 23:53:25 2009 -0500
@@ -32,7 +32,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -44,7 +44,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -56,7 +56,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 3 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -68,7 +68,7 @@
 adding manifests
 adding file changes
 added 4 changesets with 4 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -80,7 +80,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -92,7 +92,7 @@
 adding manifests
 adding file changes
 added 3 changesets with 3 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -104,7 +104,7 @@
 adding manifests
 adding file changes
 added 4 changesets with 5 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -116,7 +116,7 @@
 adding manifests
 adding file changes
 added 5 changesets with 6 changes to 3 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -128,7 +128,7 @@
 adding manifests
 adding file changes
 added 5 changesets with 5 changes to 2 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-ssh.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-ssh.out	Mon Oct 19 23:53:25 2009 -0500
@@ -6,7 +6,7 @@
 streaming all changes
 XXX files to transfer, XXX bytes of data
 transferred XXX bytes in XXX seconds (XXX XB/sec)
-updating working directory
+updating to branch default
 XXX files updated, XXX files merged, XXX files removed, XXX files unresolved
 checking changesets
 checking manifests
@@ -19,7 +19,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 # verify
 checking changesets
--- a/tests/test-static-http.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-static-http.out	Mon Oct 19 23:53:25 2009 -0500
@@ -12,7 +12,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -39,7 +39,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
@@ -50,7 +50,7 @@
 default = static-http://localhost/
 % test with empty repo (issue965)
 no changes found
-updating working directory
+updating to branch default
 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 checking changesets
 checking manifests
--- a/tests/test-subrepo.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-subrepo.out	Mon Oct 19 23:53:25 2009 -0500
@@ -97,7 +97,7 @@
 t3
 >>>>>>> other
 % clone
-updating working directory
+updating to branch default
 pulling subrepo s
 requesting all changes
 adding changesets
--- a/tests/test-symlink-os-yes-fs-no.py.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-symlink-os-yes-fs-no.py.out	Mon Oct 19 23:53:25 2009 -0500
@@ -3,5 +3,5 @@
 adding manifests
 adding file changes
 added 1 changesets with 4 changes to 4 files
-updating working directory
+updating to branch default
 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
--- a/tests/test-symlinks.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-symlinks.out	Mon Oct 19 23:53:25 2009 -0500
@@ -19,7 +19,7 @@
 ? a/b/c/demo
 adding a/b/c/demo
 2. clone it
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 # git symlink diff
 diff --git a/a/b/c/demo b/a/b/c/demo
--- a/tests/test-transplant.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-transplant.out	Mon Oct 19 23:53:25 2009 -0500
@@ -10,7 +10,7 @@
 2 0:17ab29e464c6  b1
 1  r2
 0  r1
-updating working directory
+updating to branch default
 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 3 files removed, 0 files unresolved
 % rebase b onto r1
@@ -28,7 +28,7 @@
 2 0:17ab29e464c6  b1
 1  r2
 0  r1
-updating working directory
+updating to branch default
 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
 1 files updated, 0 files merged, 3 files removed, 0 files unresolved
 % rebase b onto r1, skipping b2
@@ -49,7 +49,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 2 files
-updating working directory
+updating to branch default
 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 searching for changes
 applying 37a1297eb21b
@@ -75,7 +75,7 @@
 0  r1
 % skip local changes transplanted to the source
 adding b4
-updating working directory
+updating to branch default
 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
 searching for changes
 applying 4333daefcb15
@@ -86,7 +86,7 @@
 adding manifests
 adding file changes
 added 1 changesets with 1 changes to 1 files
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 searching for changes
 searching for changes
--- a/tests/test-up-local-change.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-up-local-change.out	Mon Oct 19 23:53:25 2009 -0500
@@ -1,5 +1,5 @@
 adding a
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 diff -r 33aaa84a386b a
--- a/tests/test-url-rev.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-url-rev.out	Mon Oct 19 23:53:25 2009 -0500
@@ -5,7 +5,7 @@
 adding manifests
 adding file changes
 added 2 changesets with 2 changes to 1 files
-updating working directory
+updating to branch foo
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 % heads
 changeset:   1:cd2a86ecc814
--- a/tests/test-win32text.out	Mon Oct 19 00:36:52 2009 -0500
+++ b/tests/test-win32text.out	Mon Oct 19 23:53:25 2009 -0500
@@ -4,7 +4,7 @@
 
 commit should succeed
 
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 commit should fail
 Attempt to commit or push text file(s) using CRLF line endings
@@ -113,7 +113,7 @@
 
 
 
-updating working directory
+updating to branch default
 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
 adding dupe/a