Rev 6267: (jelmer) Support branching into a colocated branch that doesn't exist yet, in file:///srv/pqm.bazaar-vcs.org/archives/thelove/bzr/%2Btrunk/
Patch Queue Manager
pqm at pqm.ubuntu.com
Thu Nov 17 10:16:37 UTC 2011
At file:///srv/pqm.bazaar-vcs.org/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 6267 [merge]
revision-id: pqm at pqm.ubuntu.com-20111117101637-xyvsf9w3943gkx2e
parent: pqm at pqm.ubuntu.com-20111116173045-ahibgqqj1334x2bo
parent: jelmer at samba.org-20111117001243-ixagqmkyxugigjzp
committer: Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Thu 2011-11-17 10:16:37 +0000
message:
(jelmer) Support branching into a colocated branch that doesn't exist yet,
without requiring --use-existing-dir. (Jelmer Vernooij)
modified:
bzrlib/branch.py branch.py-20050309040759-e4baf4e0d046576e
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
bzrlib/tests/blackbox/test_branch.py test_branch.py-20060524161337-noms9gmcwqqrfi8y-1
=== modified file 'bzrlib/branch.py'
--- a/bzrlib/branch.py 2011-11-16 12:25:23 +0000
+++ b/bzrlib/branch.py 2011-11-17 00:12:43 +0000
@@ -1606,6 +1606,9 @@
"""Return the format for the branch object in controldir."""
try:
transport = controldir.get_branch_transport(None, name=name)
+ except errors.NoSuchFile:
+ raise errors.NotBranchError(path=name, bzrdir=controldir)
+ try:
format_string = transport.get_bytes("format")
return format_registry.get(format_string)
except errors.NoSuchFile:
=== modified file 'bzrlib/builtins.py'
--- a/bzrlib/builtins.py 2011-11-01 18:40:39 +0000
+++ b/bzrlib/builtins.py 2011-11-17 00:12:43 +0000
@@ -1317,22 +1317,22 @@
try:
to_transport.mkdir('.')
except errors.FileExists:
- if not use_existing_dir:
- raise errors.BzrCommandError(gettext('Target directory "%s" '
- 'already exists.') % to_location)
- else:
- try:
- to_dir = controldir.ControlDir.open_from_transport(
- to_transport)
- except errors.NotBranchError:
+ try:
+ to_dir = controldir.ControlDir.open_from_transport(
+ to_transport)
+ except errors.NotBranchError:
+ if not use_existing_dir:
+ raise errors.BzrCommandError(gettext('Target directory "%s" '
+ 'already exists.') % to_location)
+ else:
to_dir = None
+ else:
+ try:
+ to_dir.open_branch()
+ except errors.NotBranchError:
+ pass
else:
- try:
- to_dir.open_branch()
- except errors.NotBranchError:
- pass
- else:
- raise errors.AlreadyBranchError(to_location)
+ raise errors.AlreadyBranchError(to_location)
except errors.NoSuchFile:
raise errors.BzrCommandError(gettext('Parent of "%s" does not exist.')
% to_location)
=== modified file 'bzrlib/tests/blackbox/test_branch.py'
--- a/bzrlib/tests/blackbox/test_branch.py 2011-10-13 14:12:19 +0000
+++ b/bzrlib/tests/blackbox/test_branch.py 2011-11-17 00:12:43 +0000
@@ -30,7 +30,6 @@
from bzrlib.tests import TestCaseWithTransport
from bzrlib.tests import (
fixtures,
- script,
test_server,
)
from bzrlib.tests.features import (
@@ -74,12 +73,15 @@
out)
self.assertEqual('', err)
out, err = self.run_bzr(
- 'branch --use-existing-dir a file:b,branch=thiswasa')
+ 'branch a file:b,branch=thiswasa')
self.assertEqual('', out)
self.assertEqual('Branched 2 revisions.\n', err)
out, err = self.run_bzr('branches b')
self.assertEqual(" orig\n thiswasa\n", out)
self.assertEqual('', err)
+ out,err = self.run_bzr('branch a file:b,branch=orig', retcode=3)
+ self.assertEqual('', out)
+ self.assertEqual('bzr: ERROR: Already a branch: "file:b,branch=orig".\n', err)
def test_branch_broken_pack(self):
"""branching with a corrupted pack file."""
More information about the bazaar-commits
mailing list