Rev 3230: Stackable branch fixes. in http://people.ubuntu.com/~robertc/baz2.0/shallow-branch
Robert Collins
robertc at robertcollins.net
Fri Feb 15 03:26:15 GMT 2008
At http://people.ubuntu.com/~robertc/baz2.0/shallow-branch
------------------------------------------------------------
revno: 3230
revision-id:robertc at robertcollins.net-20080215032610-5u2bbflfg1zi4dk0
parent: robertc at robertcollins.net-20080215022546-g3i4tmuoln761k8r
committer: Robert Collins <robertc at robertcollins.net>
branch nick: StackableBranch
timestamp: Fri 2008-02-15 14:26:10 +1100
message:
Stackable branch fixes.
modified:
bzrlib/branch.py branch.py-20050309040759-e4baf4e0d046576e
bzrlib/tests/branch_implementations/test_stacking.py test_stacking.py-20080214020755-msjlkb7urobwly0f-1
bzrlib/tests/test_branch.py test_branch.py-20060116013032-97819aa07b8ab3b5
=== modified file 'bzrlib/branch.py'
--- a/bzrlib/branch.py 2008-02-15 02:25:46 +0000
+++ b/bzrlib/branch.py 2008-02-15 03:26:10 +0000
@@ -1994,6 +1994,10 @@
def get_stacked_on(self):
self._check_stackable_repo()
+ stacked_url = self.control_files.get_utf8('stacked-on').read()[:-1]
+ if not stacked_url:
+ raise errors.NotStacked(self)
+ return stacked_url
def set_append_revisions_only(self, enabled):
if enabled:
@@ -2005,6 +2009,9 @@
def set_stacked_on(self, url):
self._check_stackable_repo()
+ if not url:
+ url = ''
+ self.control_files.put_utf8('stacked-on', url + '\n')
def _get_append_revisions_only(self):
value = self.get_config().get_user_option('append_revisions_only')
=== modified file 'bzrlib/tests/branch_implementations/test_stacking.py'
--- a/bzrlib/tests/branch_implementations/test_stacking.py 2008-02-14 02:08:03 +0000
+++ b/bzrlib/tests/branch_implementations/test_stacking.py 2008-02-15 03:26:10 +0000
@@ -41,6 +41,6 @@
self.assertRaises(old_format_errors, branch.get_stacked_on)
return
# now we have a stacked branch:
- self.assertEqual(target.base, branch.get_stacked_on)
+ self.assertEqual(target.base, branch.get_stacked_on())
branch.set_stacked_on(None)
- self.assertRaises(NotStacked, branch.get_stacked_on)
+ self.assertRaises(errors.NotStacked, branch.get_stacked_on)
=== modified file 'bzrlib/tests/test_branch.py'
--- a/bzrlib/tests/test_branch.py 2008-02-14 00:40:32 +0000
+++ b/bzrlib/tests/test_branch.py 2008-02-15 03:26:10 +0000
@@ -339,7 +339,9 @@
return "development-subtree"
def test_set_stacked_on_unstackable_repo(self):
- branch = self.make_branch('a', format=self.get_format_name())
+ repo = self.make_repository('a', format='dirstate-tags')
+ control = repo.bzrdir
+ branch = _mod_branch.BzrBranchFormat7().initialize(control)
target = self.make_branch('b')
self.assertRaises(errors.UnstackableRepositoryFormat,
branch.set_stacked_on, target.base)
More information about the bazaar-commits
mailing list