1. Martin Geisler
  2. hg-i18n


Katsunori FUJIWARA  committed 61c8327

bundle: treat branches created newly on the local correctly (issue3828)

Before this patch, "hg bundle --branch foo other" fails to create
bundle file, if specified "foo" branch is created newly on the local

"hg bundle" uses "hg.addbranchrevs(repo, other, ...)" to look branch
names up, even though other outgoing-like implementation uses
"hg.addbranchrevs(repo, repo, ...)". In the former invocation, "other"
repository recognizes such branches as unknown, so execution is

This patch uses "hg.addbranchrevs(repo, repo, ..)" in "hg bundle" to
bundle revisions on such branches correctly.

  • Participants
  • Parent commits 7d66a44
  • Branches stable

Comments (0)

Files changed (2)

File mercurial/commands.py

View file
  • Ignore whitespace
         dest = ui.expandpath(dest or 'default-push', dest or 'default')
         dest, branches = hg.parseurl(dest, opts.get('branch'))
         other = hg.peer(repo, opts, dest)
-        revs, checkout = hg.addbranchrevs(repo, other, branches, revs)
+        revs, checkout = hg.addbranchrevs(repo, repo, branches, revs)
         heads = revs and map(repo.lookup, revs) or revs
         outgoing = discovery.findcommonoutgoing(repo, other,

File tests/test-bundle.t

View file
  • Ignore whitespace
   $ cd ..
+test to bundle revisions on the newly created branch (issue3828):
+  $ hg -q clone -U test test-clone
+  $ cd test
+  $ hg -q branch foo
+  $ hg commit -m "create foo branch"
+  $ hg -q outgoing ../test-clone
+  9:b4f5acb1ee27
+  $ hg -q bundle --branch foo foo.hg ../test-clone
+  $ hg -R foo.hg -q log -r "bundle()"
+  9:b4f5acb1ee27
+  $ cd ..
 test for http://mercurial.selenic.com/bts/issue1144
 test that verify bundle does not traceback