[MERGE] init remote branches
Wouter van Heyst
larstiq at larstiq.dyndns.org
Thu Jul 13 19:41:10 BST 2006
Hi,
the attached bundle allows init to also work on remote locations (bug
#48904), it doesn't yet have create-prefix support since my last attempt
at that didn't really turn out well, but I think it is better to submit
this now for 0.9 and try create-prefix again later on.
The branch is located at http://bzr.richtlijn.be/remote-init/
Wouter van Heyst
-------------- next part --------------
# Bazaar revision bundle v0.8
#
# message:
# [merge] bzr.dev 1863
# committer: Wouter van Heyst <larstiq at larstiq.dyndns.org>
# date: Thu 2006-07-13 20:18:00.404706955 +0200
=== modified file NEWS
--- NEWS
+++ NEWS
@@ -101,6 +101,9 @@
were removed. So it is safe to uncommit after a merge, fix something,
and commit again. (John Arbash Meinel, #32526, #31426)
+ * 'bzr init' now also works on remote locations.
+ (Wouter van Heyst, #48904)
+
BUG FIXES:
* Fix shadowed definition of TestLocationConfig that caused some
=== modified file bzrlib/builtins.py
--- bzrlib/builtins.py
+++ bzrlib/builtins.py
@@ -33,14 +33,15 @@
from bzrlib.commands import Command, display_command
from bzrlib.errors import (BzrError, BzrCheckError, BzrCommandError,
NotBranchError, DivergedBranches, NotConflicted,
- NoSuchFile, NoWorkingTree, FileInWrongBranch,
- NotVersionedError, NotABundle)
+ NoSuchFile, NoWorkingTree, FileExists,
+ FileInWrongBranch, NotVersionedError, NotABundle)
from bzrlib.merge import Merge3Merger
from bzrlib.option import Option
from bzrlib.progress import DummyProgress, ProgressPhase
from bzrlib.revision import common_ancestor
from bzrlib.revisionspec import RevisionSpec
from bzrlib.trace import mutter, note, log_error, warning, is_quiet, info
+import bzrlib.transport
from bzrlib.transport.local import LocalTransport
import bzrlib.urlutils as urlutils
from bzrlib.workingtree import WorkingTree
@@ -516,7 +517,6 @@
create_prefix=False, verbose=False):
# FIXME: Way too big! Put this into a function called from the
# command.
- from bzrlib.transport import get_transport
br_from = Branch.open_containing('.')[0]
stored_loc = br_from.get_push_location()
@@ -529,7 +529,7 @@
self.outf.write("Using saved location: %s\n" % display_url)
location = stored_loc
- transport = get_transport(location)
+ transport = bzrlib.transport.get_transport(location)
location_url = transport.base
old_rh = []
@@ -618,7 +618,6 @@
aliases = ['get', 'clone']
def run(self, from_location, to_location=None, revision=None, basis=None):
- from bzrlib.transport import get_transport
if revision is None:
revision = [None]
elif len(revision) > 1:
@@ -651,7 +650,7 @@
else:
name = os.path.basename(to_location) + '\n'
- to_transport = get_transport(to_location)
+ to_transport = bzrlib.transport.get_transport(to_location)
try:
to_transport.mkdir('.')
except errors.FileExists:
@@ -1016,14 +1015,20 @@
format = get_format_type('default')
if location is None:
location = u'.'
- else:
- # The path has to exist to initialize a
- # branch inside of it.
- # Just using os.mkdir, since I don't
- # believe that we want to create a bunch of
- # locations if the user supplies an extended path
- if not os.path.exists(location):
- os.mkdir(location)
+
+ transport = bzrlib.transport.get_transport(location)
+
+ # The path has to exist to initialize a
+ # branch inside of it.
+ # Just using os.mkdir, since I don't
+ # believe that we want to create a bunch of
+ # locations if the user supplies an extended path
+ # TODO: create-prefix
+ try:
+ transport.mkdir('.')
+ except FileExists:
+ pass
+
try:
existing_bzrdir = bzrdir.BzrDir.open(location)
except NotBranchError:
@@ -1031,10 +1036,10 @@
bzrdir.BzrDir.create_branch_convenience(location, format=format)
else:
if existing_bzrdir.has_branch():
- if existing_bzrdir.has_workingtree():
- raise errors.AlreadyBranchError(location)
- else:
- raise errors.BranchExistsWithoutWorkingTree(location)
+ if isinstance(transport, LocalTransport):
+ if not existing_bzrdir.has_workingtree():
+ raise errors.BranchExistsWithoutWorkingTree(location)
+ raise errors.AlreadyBranchError(location)
else:
existing_bzrdir.create_branch()
existing_bzrdir.create_workingtree()
@@ -1066,12 +1071,18 @@
' a working tree')]
aliases = ["init-repo"]
def run(self, location, format=None, trees=False):
- from bzrlib.transport import get_transport
if format is None:
format = get_format_type('default')
- transport = get_transport(location)
- if not transport.has('.'):
- transport.mkdir('')
+
+ if location is None:
+ location = '.'
+
+ transport = bzrlib.transport.get_transport(location)
+ try:
+ transport.mkdir('.')
+ except FileExists:
+ pass
+
newdir = format.initialize_on_transport(transport)
repo = newdir.create_repository(shared=True)
repo.set_make_working_trees(trees)
=== modified file bzrlib/tests/blackbox/test_init.py
--- bzrlib/tests/blackbox/test_init.py
+++ bzrlib/tests/blackbox/test_init.py
@@ -22,6 +22,7 @@
from bzrlib.bzrdir import BzrDirMetaFormat1
from bzrlib.tests.blackbox import ExternalBase
+from bzrlib.tests.test_sftp_transport import TestCaseWithSFTPServer
from bzrlib.workingtree import WorkingTree
@@ -104,3 +105,32 @@
"""Init creates no default ignore rules."""
self.run_bzr('init')
self.assertFalse(os.path.exists('.bzrignore'))
+
+class TestSFTPInit(TestCaseWithSFTPServer):
+
+ def test_init(self):
+ # init on a remote url should succeed.
+ out, err = self.run_bzr('init', self.get_url())
+ self.assertEqual('', out)
+ self.assertEqual('', err)
+
+ def test_init_existing_branch(self):
+ # when there is already a branch present, make mention
+ self.make_branch('.')
+
+ # rely on SFTPServer get_url() pointing at '.'
+ out, err = self.run_bzr('init', self.get_url(), retcode=3)
+ self.assertContainsRe(err, 'Already a branch')
+ self.run_bzr_error(['Already a branch'], 'init', self.get_url())
+
+ # make sure using 'bzr checkout' is not suggested
+ # for remote locations missing a working tree
+ self.assertFalse(re.search(r'checkout', err))
+
+ def test_init_existing_branch_with_workingtree(self):
+ # don't distinguish between the branch having a working tree or not
+ # when the branch itself is remote.
+ self.make_branch_and_tree('.')
+
+ # rely on SFTPServer get_url() pointing at '.'
+ self.run_bzr_error(['Already a branch'], 'init', self.get_url())
# revision id: larstiq at larstiq.dyndns.org-20060713181800-4e8c4f9326597d7f
# sha1: a7e718df49eac2e7f4b5dc5306445e96ec15cca1
# inventory sha1: ba540f60700bac9a247285a74e96e72928c759d8
# parent ids:
# larstiq at larstiq.dyndns.org-20060708135701-2287cf5609d52f94
# pqm at pqm.ubuntu.com-20060713133754-64c134fffd39fd99
# base id: pqm at pqm.ubuntu.com-20060713133754-64c134fffd39fd99
# properties:
# branch-nick: remote-init
# message:
# cleanup
# committer: Wouter van Heyst <larstiq at larstiq.dyndns.org>
# date: Sat 2006-07-08 15:57:01.208614111 +0200
=== modified file bzrlib/builtins.py // encoding:base64
LS0tIGJ6cmxpYi9idWlsdGlucy5weQorKysgYnpybGliL2J1aWx0aW5zLnB5CkBAIC0zMSwxNSAr
MzEsMTUgQEAKIGZyb20gYnpybGliLmNvbW1hbmRzIGltcG9ydCBDb21tYW5kLCBkaXNwbGF5X2Nv
bW1hbmQKIGZyb20gYnpybGliLmVycm9ycyBpbXBvcnQgKEJ6ckVycm9yLCBCenJDaGVja0Vycm9y
LCBCenJDb21tYW5kRXJyb3IsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90QnJhbmNo
RXJyb3IsIERpdmVyZ2VkQnJhbmNoZXMsIE5vdENvbmZsaWN0ZWQsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICBOb1N1Y2hGaWxlLCBOb1dvcmtpbmdUcmVlLCBGaWxlSW5Xcm9uZ0JyYW5jaCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vdFZlcnNpb25lZEVycm9yLCBOb3RBQnVuZGxl
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgTm9TdWNoRmlsZSwgTm9Xb3JraW5nVHJlZSwg
RmlsZUV4aXN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIEZpbGVJbldyb25nQnJhbmNo
LCBOb3RWZXJzaW9uZWRFcnJvciwgTm90QUJ1bmRsZSkKIGZyb20gYnpybGliLm1lcmdlIGltcG9y
dCBNZXJnZTNNZXJnZXIKIGZyb20gYnpybGliLm9wdGlvbiBpbXBvcnQgT3B0aW9uCiBmcm9tIGJ6
cmxpYi5wcm9ncmVzcyBpbXBvcnQgRHVtbXlQcm9ncmVzcywgUHJvZ3Jlc3NQaGFzZQogZnJvbSBi
enJsaWIucmV2aXNpb24gaW1wb3J0IGNvbW1vbl9hbmNlc3RvcgogZnJvbSBienJsaWIucmV2aXNp
b25zcGVjIGltcG9ydCBSZXZpc2lvblNwZWMKIGZyb20gYnpybGliLnRyYWNlIGltcG9ydCBtdXR0
ZXIsIG5vdGUsIGxvZ19lcnJvciwgd2FybmluZywgaXNfcXVpZXQsIGluZm8KLWltcG9ydCAgYnpy
bGliLnRyYW5zcG9ydAoraW1wb3J0IGJ6cmxpYi50cmFuc3BvcnQKIGZyb20gYnpybGliLnRyYW5z
cG9ydC5sb2NhbCBpbXBvcnQgTG9jYWxUcmFuc3BvcnQKIGltcG9ydCBienJsaWIudXJsdXRpbHMg
YXMgdXJsdXRpbHMKIGZyb20gYnpybGliLndvcmtpbmd0cmVlIGltcG9ydCBXb3JraW5nVHJlZQpA
QCAtMTAwNiwxNyArMTAwNiwyMSBAQAogICAgIGRlZiBydW4oc2VsZiwgbG9jYXRpb249Tm9uZSwg
Zm9ybWF0PU5vbmUpOgogICAgICAgICBpZiBmb3JtYXQgaXMgTm9uZToKICAgICAgICAgICAgIGZv
cm1hdCA9IGdldF9mb3JtYXRfdHlwZSgnZGVmYXVsdCcpCi0gICAgICAgIHRyYW5zcG9ydCA9IGJ6
cmxpYi50cmFuc3BvcnQuZ2V0X3RyYW5zcG9ydChsb2NhdGlvbikKICAgICAgICAgaWYgbG9jYXRp
b24gaXMgTm9uZToKICAgICAgICAgICAgIGxvY2F0aW9uID0gdScuJwotICAgICAgICBlbHNlOgot
ICAgICAgICAgICAgIyBUaGUgcGF0aCBoYXMgdG8gZXhpc3QgdG8gaW5pdGlhbGl6ZSBhCi0gICAg
ICAgICAgICAjIGJyYW5jaCBpbnNpZGUgb2YgaXQuCi0gICAgICAgICAgICAjIEp1c3QgdXNpbmcg
b3MubWtkaXIsIHNpbmNlIEkgZG9uJ3QKLSAgICAgICAgICAgICMgYmVsaWV2ZSB0aGF0IHdlIHdh
bnQgdG8gY3JlYXRlIGEgYnVuY2ggb2YKLSAgICAgICAgICAgICMgbG9jYXRpb25zIGlmIHRoZSB1
c2VyIHN1cHBsaWVzIGFuIGV4dGVuZGVkIHBhdGgKLSAgICAgICAgICAgIGlmIG5vdCB0cmFuc3Bv
cnQuaGFzKCcuJyk6Ci0gICAgICAgICAgICAgICAgdHJhbnNwb3J0Lm1rZGlyKCcnKQorCisgICAg
ICAgIHRyYW5zcG9ydCA9IGJ6cmxpYi50cmFuc3BvcnQuZ2V0X3RyYW5zcG9ydChsb2NhdGlvbikK
KworICAgICAgICAjIFRoZSBwYXRoIGhhcyB0byBleGlzdCB0byBpbml0aWFsaXplIGEKKyAgICAg
ICAgIyBicmFuY2ggaW5zaWRlIG9mIGl0LgorICAgICAgICAjIEp1c3QgdXNpbmcgb3MubWtkaXIs
IHNpbmNlIEkgZG9uJ3QKKyAgICAgICAgIyBiZWxpZXZlIHRoYXQgd2Ugd2FudCB0byBjcmVhdGUg
YSBidW5jaCBvZgorICAgICAgICAjIGxvY2F0aW9ucyBpZiB0aGUgdXNlciBzdXBwbGllcyBhbiBl
eHRlbmRlZCBwYXRoCisgICAgICAgICMgVE9ETzogY3JlYXRlLXByZWZpeAorICAgICAgICB0cnk6
CisgICAgICAgICAgICB0cmFuc3BvcnQubWtkaXIoJy4nKQorICAgICAgICBleGNlcHQgRmlsZUV4
aXN0czoKKyAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgIHRy
eToKICAgICAgICAgICAgIGV4aXN0aW5nX2J6cmRpciA9IGJ6cmRpci5CenJEaXIub3Blbihsb2Nh
dGlvbikKQEAgLTEwNjIsOSArMTA2NiwxNiBAQAogICAgIGRlZiBydW4oc2VsZiwgbG9jYXRpb24s
IGZvcm1hdD1Ob25lLCB0cmVlcz1GYWxzZSk6CiAgICAgICAgIGlmIGZvcm1hdCBpcyBOb25lOgog
ICAgICAgICAgICAgZm9ybWF0ID0gZ2V0X2Zvcm1hdF90eXBlKCdkZWZhdWx0JykKKworICAgICAg
ICBpZiBsb2NhdGlvbiBpcyBOb25lOgorICAgICAgICAgICAgbG9jYXRpb24gPSAnLicKKwogICAg
ICAgICB0cmFuc3BvcnQgPSBienJsaWIudHJhbnNwb3J0LmdldF90cmFuc3BvcnQobG9jYXRpb24p
Ci0gICAgICAgIGlmIG5vdCB0cmFuc3BvcnQuaGFzKCcuJyk6Ci0gICAgICAgICAgICB0cmFuc3Bv
cnQubWtkaXIoJycpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHRyYW5zcG9ydC5ta2Rpcign
LicpCisgICAgICAgIGV4Y2VwdCBGaWxlRXhpc3RzOgorICAgICAgICAgICAgcGFzcworCiAgICAg
ICAgIG5ld2RpciA9IGZvcm1hdC5pbml0aWFsaXplX29uX3RyYW5zcG9ydCh0cmFuc3BvcnQpCiAg
ICAgICAgIHJlcG8gPSBuZXdkaXIuY3JlYXRlX3JlcG9zaXRvcnkoc2hhcmVkPVRydWUpCiAgICAg
ICAgIHJlcG8uc2V0X21ha2Vfd29ya2luZ190cmVlcyh0cmVlcykKCg==
=== modified file bzrlib/tests/blackbox/test_init.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy9ibGFja2JveC90ZXN0X2luaXQucHkKKysrIGJ6cmxpYi90ZXN0cy9i
bGFja2JveC90ZXN0X2luaXQucHkKQEAgLTExNyw2ICsxMTcsMTEgQEAKICAgICAgICAgIyByZWx5
IG9uIFNGVFBTZXJ2ZXIgZ2V0X3VybCgpIHBvaW50aW5nIGF0ICcuJwogICAgICAgICBvdXQsIGVy
ciA9IHNlbGYucnVuX2J6cignaW5pdCcsIHNlbGYuZ2V0X3VybCgpLCByZXRjb2RlPTMpCiAgICAg
ICAgIHNlbGYuYXNzZXJ0Q29udGFpbnNSZShlcnIsICdBbHJlYWR5IGEgYnJhbmNoJykKKyAgICAg
ICAgc2VsZi5ydW5fYnpyX2Vycm9yKFsnQWxyZWFkeSBhIGJyYW5jaCddLCAnaW5pdCcsIHNlbGYu
Z2V0X3VybCgpKQorCisgICAgICAgICMgbWFrZSBzdXJlIHVzaW5nICdienIgY2hlY2tvdXQnIGlz
IG5vdCBzdWdnZXN0ZWQKKyAgICAgICAgIyBmb3IgcmVtb3RlIGxvY2F0aW9ucyBtaXNzaW5nIGEg
d29ya2luZyB0cmVlCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UocmUuc2VhcmNoKHInY2hlY2tv
dXQnLCBlcnIpKQogCiAgICAgZGVmIHRlc3RfaW5pdF9leGlzdGluZ19icmFuY2hfd2l0aF93b3Jr
aW5ndHJlZShzZWxmKToKICAgICAgICAgIyBkb24ndCBkaXN0aW5ndWlzaCBiZXR3ZWVuIHRoZSBi
cmFuY2ggaGF2aW5nIGEgd29ya2luZyB0cmVlIG9yIG5vdApAQCAtMTI0LDUgKzEyOSw0IEBACiAg
ICAgICAgIHNlbGYubWFrZV9icmFuY2hfYW5kX3RyZWUoJy4nKQogCiAgICAgICAgICMgcmVseSBv
biBTRlRQU2VydmVyIGdldF91cmwoKSBwb2ludGluZyBhdCAnLicKLSAgICAgICAgb3V0LCBlcnIg
PSBzZWxmLnJ1bl9ienIoJ2luaXQnLCBzZWxmLmdldF91cmwoKSwgcmV0Y29kZT0zKQotICAgICAg
ICBzZWxmLmFzc2VydEZhbHNlKHJlLnNlYXJjaChyJ2NoZWNrb3V0JywgZXJyKSkKKyAgICAgICAg
c2VsZi5ydW5fYnpyX2Vycm9yKFsnQWxyZWFkeSBhIGJyYW5jaCddLCAnaW5pdCcsIHNlbGYuZ2V0
X3VybCgpKQoK
# revision id: larstiq at larstiq.dyndns.org-20060708135701-2287cf5609d52f94
# sha1: cfd6e079a5c6ae8a24292b748732ef7a67808f7b
# inventory sha1: 1ddc0deceed534b90f4004b81a0d81a5123459bc
# parent ids:
# larstiq at larstiq.dyndns.org-20060702164837-f605fe8406da8038
# properties:
# branch-nick: remote-init
# message:
# more review comments
# committer: Wouter van Heyst <larstiq at larstiq.dyndns.org>
# date: Sun 2006-07-02 18:48:37.698283911 +0200
=== modified file bzrlib/builtins.py // encoding:base64
LS0tIGJ6cmxpYi9idWlsdGlucy5weQorKysgYnpybGliL2J1aWx0aW5zLnB5CkBAIC0zOSw3ICsz
OSw3IEBACiBmcm9tIGJ6cmxpYi5yZXZpc2lvbiBpbXBvcnQgY29tbW9uX2FuY2VzdG9yCiBmcm9t
IGJ6cmxpYi5yZXZpc2lvbnNwZWMgaW1wb3J0IFJldmlzaW9uU3BlYwogZnJvbSBienJsaWIudHJh
Y2UgaW1wb3J0IG11dHRlciwgbm90ZSwgbG9nX2Vycm9yLCB3YXJuaW5nLCBpc19xdWlldCwgaW5m
bwotZnJvbSBienJsaWIudHJhbnNwb3J0IGltcG9ydCBnZXRfdHJhbnNwb3J0CitpbXBvcnQgIGJ6
cmxpYi50cmFuc3BvcnQKIGZyb20gYnpybGliLnRyYW5zcG9ydC5sb2NhbCBpbXBvcnQgTG9jYWxU
cmFuc3BvcnQKIGltcG9ydCBienJsaWIudXJsdXRpbHMgYXMgdXJsdXRpbHMKIGZyb20gYnpybGli
Lndvcmtpbmd0cmVlIGltcG9ydCBXb3JraW5nVHJlZQpAQCAtNTI0LDcgKzUyNCw3IEBACiAgICAg
ICAgICAgICAgICAgc2VsZi5vdXRmLndyaXRlKCJVc2luZyBzYXZlZCBsb2NhdGlvbjogJXNcbiIg
JSBkaXNwbGF5X3VybCkKICAgICAgICAgICAgICAgICBsb2NhdGlvbiA9IHN0b3JlZF9sb2MKIAot
ICAgICAgICB0cmFuc3BvcnQgPSBnZXRfdHJhbnNwb3J0KGxvY2F0aW9uKQorICAgICAgICB0cmFu
c3BvcnQgPSBienJsaWIudHJhbnNwb3J0LmdldF90cmFuc3BvcnQobG9jYXRpb24pCiAgICAgICAg
IGxvY2F0aW9uX3VybCA9IHRyYW5zcG9ydC5iYXNlCiAKICAgICAgICAgb2xkX3JoID0gW10KQEAg
LTY0NSw3ICs2NDUsNyBAQAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBuYW1l
ID0gb3MucGF0aC5iYXNlbmFtZSh0b19sb2NhdGlvbikgKyAnXG4nCiAKLSAgICAgICAgICAgIHRv
X3RyYW5zcG9ydCA9IGdldF90cmFuc3BvcnQodG9fbG9jYXRpb24pCisgICAgICAgICAgICB0b190
cmFuc3BvcnQgPSBienJsaWIudHJhbnNwb3J0LmdldF90cmFuc3BvcnQodG9fbG9jYXRpb24pCiAg
ICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgdG9fdHJhbnNwb3J0Lm1rZGlyKCcuJykK
ICAgICAgICAgICAgIGV4Y2VwdCBlcnJvcnMuRmlsZUV4aXN0czoKQEAgLTEwMDYsNyArMTAwNiw3
IEBACiAgICAgZGVmIHJ1bihzZWxmLCBsb2NhdGlvbj1Ob25lLCBmb3JtYXQ9Tm9uZSk6CiAgICAg
ICAgIGlmIGZvcm1hdCBpcyBOb25lOgogICAgICAgICAgICAgZm9ybWF0ID0gZ2V0X2Zvcm1hdF90
eXBlKCdkZWZhdWx0JykKLSAgICAgICAgdHJhbnNwb3J0ID0gZ2V0X3RyYW5zcG9ydChsb2NhdGlv
bikKKyAgICAgICAgdHJhbnNwb3J0ID0gYnpybGliLnRyYW5zcG9ydC5nZXRfdHJhbnNwb3J0KGxv
Y2F0aW9uKQogICAgICAgICBpZiBsb2NhdGlvbiBpcyBOb25lOgogICAgICAgICAgICAgbG9jYXRp
b24gPSB1Jy4nCiAgICAgICAgIGVsc2U6CkBAIC0xMDYyLDcgKzEwNjIsNyBAQAogICAgIGRlZiBy
dW4oc2VsZiwgbG9jYXRpb24sIGZvcm1hdD1Ob25lLCB0cmVlcz1GYWxzZSk6CiAgICAgICAgIGlm
IGZvcm1hdCBpcyBOb25lOgogICAgICAgICAgICAgZm9ybWF0ID0gZ2V0X2Zvcm1hdF90eXBlKCdk
ZWZhdWx0JykKLSAgICAgICAgdHJhbnNwb3J0ID0gZ2V0X3RyYW5zcG9ydChsb2NhdGlvbikKKyAg
ICAgICAgdHJhbnNwb3J0ID0gYnpybGliLnRyYW5zcG9ydC5nZXRfdHJhbnNwb3J0KGxvY2F0aW9u
KQogICAgICAgICBpZiBub3QgdHJhbnNwb3J0LmhhcygnLicpOgogICAgICAgICAgICAgdHJhbnNw
b3J0Lm1rZGlyKCcnKQogICAgICAgICBuZXdkaXIgPSBmb3JtYXQuaW5pdGlhbGl6ZV9vbl90cmFu
c3BvcnQodHJhbnNwb3J0KQoK
=== modified file bzrlib/tests/blackbox/test_init.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy9ibGFja2JveC90ZXN0X2luaXQucHkKKysrIGJ6cmxpYi90ZXN0cy9i
bGFja2JveC90ZXN0X2luaXQucHkKQEAgLTExMiwxMSArMTEyLDEzIEBACiAgICAgCiAgICAgZGVm
IHRlc3RfaW5pdF9leGlzdGluZ19icmFuY2goc2VsZik6CiAgICAgICAgICMgd2hlbiB0aGVyZSBp
cyBhbHJlYWR5IGEgYnJhbmNoIHByZXNlbnQsIG1ha2UgbWVudGlvbgotICAgICAgICBzZWxmLnJ1
bl9ienIoJ2luaXQnLCBzZWxmLmdldF91cmwoKSkKKyAgICAgICAgc2VsZi5tYWtlX2JyYW5jaCgn
LicpCisKKyAgICAgICAgIyByZWx5IG9uIFNGVFBTZXJ2ZXIgZ2V0X3VybCgpIHBvaW50aW5nIGF0
ICcuJwogICAgICAgICBvdXQsIGVyciA9IHNlbGYucnVuX2J6cignaW5pdCcsIHNlbGYuZ2V0X3Vy
bCgpLCByZXRjb2RlPTMpCiAgICAgICAgIHNlbGYuYXNzZXJ0Q29udGFpbnNSZShlcnIsICdBbHJl
YWR5IGEgYnJhbmNoJykKIAotICAgIGRlZiB0ZXN0X2luaXRfc29tZXRoaW5nKHNlbGYpOgorICAg
IGRlZiB0ZXN0X2luaXRfZXhpc3RpbmdfYnJhbmNoX3dpdGhfd29ya2luZ3RyZWUoc2VsZik6CiAg
ICAgICAgICMgZG9uJ3QgZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGUgYnJhbmNoIGhhdmluZyBhIHdv
cmtpbmcgdHJlZSBvciBub3QKICAgICAgICAgIyB3aGVuIHRoZSBicmFuY2ggaXRzZWxmIGlzIHJl
bW90ZS4KICAgICAgICAgc2VsZi5tYWtlX2JyYW5jaF9hbmRfdHJlZSgnLicpCgo=
# revision id: larstiq at larstiq.dyndns.org-20060702164837-f605fe8406da8038
# sha1: bd7fdab5b720d963a29ae8690db48ab60988bdb4
# inventory sha1: 02582aa7193e2f261c7f48a493a8ebce478a8aa5
# parent ids:
# larstiq at larstiq.dyndns.org-20060702161805-25638faa09cd04bd
# properties:
# branch-nick: remote-init
# message:
# more review comments
# committer: Wouter van Heyst <larstiq at larstiq.dyndns.org>
# date: Sun 2006-07-02 18:18:05.707833052 +0200
=== modified file bzrlib/tests/blackbox/test_init.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy9ibGFja2JveC90ZXN0X2luaXQucHkKKysrIGJ6cmxpYi90ZXN0cy9i
bGFja2JveC90ZXN0X2luaXQucHkKQEAgLTEwNSwxNiArMTA1LDIyIEBACiBjbGFzcyBUZXN0U0ZU
UEluaXQoVGVzdENhc2VXaXRoU0ZUUFNlcnZlcik6CiAKICAgICBkZWYgdGVzdF9pbml0KHNlbGYp
OgotICAgICAgICB1cmwgPSBzZWxmLmdldF91cmwoKQotICAgICAgICBvdXQsIGVyciA9IHNlbGYu
cnVuX2J6cignaW5pdCcsIHVybCkKKyAgICAgICAgIyBpbml0IG9uIGEgcmVtb3RlIHVybCBzaG91
bGQgc3VjY2VlZC4KKyAgICAgICAgb3V0LCBlcnIgPSBzZWxmLnJ1bl9ienIoJ2luaXQnLCBzZWxm
LmdldF91cmwoKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJywgb3V0KQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKCcnLCBlcnIpCi0KLSAgICAgICAgb3V0LCBlcnIgPSBzZWxmLnJ1bl9i
enIoJ2luaXQnLCB1cmwsIHJldGNvZGU9MykKKyAgICAKKyAgICBkZWYgdGVzdF9pbml0X2V4aXN0
aW5nX2JyYW5jaChzZWxmKToKKyAgICAgICAgIyB3aGVuIHRoZXJlIGlzIGFscmVhZHkgYSBicmFu
Y2ggcHJlc2VudCwgbWFrZSBtZW50aW9uCisgICAgICAgIHNlbGYucnVuX2J6cignaW5pdCcsIHNl
bGYuZ2V0X3VybCgpKQorICAgICAgICBvdXQsIGVyciA9IHNlbGYucnVuX2J6cignaW5pdCcsIHNl
bGYuZ2V0X3VybCgpLCByZXRjb2RlPTMpCiAgICAgICAgIHNlbGYuYXNzZXJ0Q29udGFpbnNSZShl
cnIsICdBbHJlYWR5IGEgYnJhbmNoJykKIAotICAgICAgICBzZWxmLnJ1bl9ienIoJ2NoZWNrb3V0
JywgJy4nKQotICAgICAgICAjIHdoZW4gdGhlIHRyYW5zcG9ydCBpcyBub3QgbG9jYWwsIGRvbid0
IGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlIGJyYW5jaAotICAgICAgICAjIGhhdmluZyBhIHdvcmtp
bmcgdHJlZSBvciBub3QuCi0gICAgICAgIG91dCwgZXJyID0gc2VsZi5ydW5fYnpyKCdpbml0Jywg
dXJsLCByZXRjb2RlPTMpCisgICAgZGVmIHRlc3RfaW5pdF9zb21ldGhpbmcoc2VsZik6CisgICAg
ICAgICMgZG9uJ3QgZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGUgYnJhbmNoIGhhdmluZyBhIHdvcmtp
bmcgdHJlZSBvciBub3QKKyAgICAgICAgIyB3aGVuIHRoZSBicmFuY2ggaXRzZWxmIGlzIHJlbW90
ZS4KKyAgICAgICAgc2VsZi5tYWtlX2JyYW5jaF9hbmRfdHJlZSgnLicpCisKKyAgICAgICAgIyBy
ZWx5IG9uIFNGVFBTZXJ2ZXIgZ2V0X3VybCgpIHBvaW50aW5nIGF0ICcuJworICAgICAgICBvdXQs
IGVyciA9IHNlbGYucnVuX2J6cignaW5pdCcsIHNlbGYuZ2V0X3VybCgpLCByZXRjb2RlPTMpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UocmUuc2VhcmNoKHInY2hlY2tvdXQnLCBlcnIpKQoK
# revision id: larstiq at larstiq.dyndns.org-20060702161805-25638faa09cd04bd
# sha1: 111d3a61ef4471a69bc952b7f5503698ab4577a8
# inventory sha1: 5c02ba5a45c285625ad4c5ff305cdfdcdccbf4eb
# parent ids:
# larstiq at larstiq.dyndns.org-20060702160708-e3a6a0e9adff50d0
# properties:
# branch-nick: remote-init
# message:
# move function local imports of get_transport to the top
# committer: Wouter van Heyst <larstiq at larstiq.dyndns.org>
# date: Sun 2006-07-02 18:07:08.325299978 +0200
=== modified file bzrlib/builtins.py // encoding:base64
LS0tIGJ6cmxpYi9idWlsdGlucy5weQorKysgYnpybGliL2J1aWx0aW5zLnB5CkBAIC0zOSw2ICsz
OSw3IEBACiBmcm9tIGJ6cmxpYi5yZXZpc2lvbiBpbXBvcnQgY29tbW9uX2FuY2VzdG9yCiBmcm9t
IGJ6cmxpYi5yZXZpc2lvbnNwZWMgaW1wb3J0IFJldmlzaW9uU3BlYwogZnJvbSBienJsaWIudHJh
Y2UgaW1wb3J0IG11dHRlciwgbm90ZSwgbG9nX2Vycm9yLCB3YXJuaW5nLCBpc19xdWlldCwgaW5m
bworZnJvbSBienJsaWIudHJhbnNwb3J0IGltcG9ydCBnZXRfdHJhbnNwb3J0CiBmcm9tIGJ6cmxp
Yi50cmFuc3BvcnQubG9jYWwgaW1wb3J0IExvY2FsVHJhbnNwb3J0CiBpbXBvcnQgYnpybGliLnVy
bHV0aWxzIGFzIHVybHV0aWxzCiBmcm9tIGJ6cmxpYi53b3JraW5ndHJlZSBpbXBvcnQgV29ya2lu
Z1RyZWUKQEAgLTUxMSw3ICs1MTIsNiBAQAogICAgICAgICAgICAgY3JlYXRlX3ByZWZpeD1GYWxz
ZSwgdmVyYm9zZT1GYWxzZSk6CiAgICAgICAgICMgRklYTUU6IFdheSB0b28gYmlnISAgUHV0IHRo
aXMgaW50byBhIGZ1bmN0aW9uIGNhbGxlZCBmcm9tIHRoZQogICAgICAgICAjIGNvbW1hbmQuCi0g
ICAgICAgIGZyb20gYnpybGliLnRyYW5zcG9ydCBpbXBvcnQgZ2V0X3RyYW5zcG9ydAogICAgICAg
ICAKICAgICAgICAgYnJfZnJvbSA9IEJyYW5jaC5vcGVuX2NvbnRhaW5pbmcoJy4nKVswXQogICAg
ICAgICBzdG9yZWRfbG9jID0gYnJfZnJvbS5nZXRfcHVzaF9sb2NhdGlvbigpCkBAIC02MTMsNyAr
NjEzLDYgQEAKICAgICBhbGlhc2VzID0gWydnZXQnLCAnY2xvbmUnXQogCiAgICAgZGVmIHJ1bihz
ZWxmLCBmcm9tX2xvY2F0aW9uLCB0b19sb2NhdGlvbj1Ob25lLCByZXZpc2lvbj1Ob25lLCBiYXNp
cz1Ob25lKToKLSAgICAgICAgZnJvbSBienJsaWIudHJhbnNwb3J0IGltcG9ydCBnZXRfdHJhbnNw
b3J0CiAgICAgICAgIGlmIHJldmlzaW9uIGlzIE5vbmU6CiAgICAgICAgICAgICByZXZpc2lvbiA9
IFtOb25lXQogICAgICAgICBlbGlmIGxlbihyZXZpc2lvbikgPiAxOgpAQCAtMTAwNSw3ICsxMDA0
LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPWdldF9mb3JtYXRfdHlwZSks
CiAgICAgICAgICAgICAgICAgICAgICBdCiAgICAgZGVmIHJ1bihzZWxmLCBsb2NhdGlvbj1Ob25l
LCBmb3JtYXQ9Tm9uZSk6Ci0gICAgICAgIGZyb20gYnpybGliLnRyYW5zcG9ydCBpbXBvcnQgZ2V0
X3RyYW5zcG9ydAogICAgICAgICBpZiBmb3JtYXQgaXMgTm9uZToKICAgICAgICAgICAgIGZvcm1h
dCA9IGdldF9mb3JtYXRfdHlwZSgnZGVmYXVsdCcpCiAgICAgICAgIHRyYW5zcG9ydCA9IGdldF90
cmFuc3BvcnQobG9jYXRpb24pCkBAIC0xMDYyLDcgKzEwNjAsNiBAQAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAnIGEgd29ya2luZyB0cmVlJyldCiAgICAgYWxpYXNlcyA9IFsiaW5pdC1y
ZXBvIl0KICAgICBkZWYgcnVuKHNlbGYsIGxvY2F0aW9uLCBmb3JtYXQ9Tm9uZSwgdHJlZXM9RmFs
c2UpOgotICAgICAgICBmcm9tIGJ6cmxpYi50cmFuc3BvcnQgaW1wb3J0IGdldF90cmFuc3BvcnQK
ICAgICAgICAgaWYgZm9ybWF0IGlzIE5vbmU6CiAgICAgICAgICAgICBmb3JtYXQgPSBnZXRfZm9y
bWF0X3R5cGUoJ2RlZmF1bHQnKQogICAgICAgICB0cmFuc3BvcnQgPSBnZXRfdHJhbnNwb3J0KGxv
Y2F0aW9uKQoK
# revision id: larstiq at larstiq.dyndns.org-20060702160708-e3a6a0e9adff50d0
# sha1: c68acf3a782a51bbd68bf64a2450bbf89a613acd
# inventory sha1: ac5f8a67f12e2c0b4300ce39e44f6b0307198e23
# parent ids:
# larstiq at larstiq.dyndns.org-20060702154600-848abd3894fadfc1
# properties:
# branch-nick: remote-init
# message:
# Allow bzr init to create remote branches
# committer: Wouter van Heyst <larstiq at larstiq.dyndns.org>
# date: Sun 2006-07-02 17:46:00.034646034 +0200
=== modified file NEWS // encoding:base64
LS0tIE5FV1MKKysrIE5FV1MKQEAgLTcxLDYgKzcxLDkgQEAKICAgICogJ2J6ciByZXZlcnQgRElS
RUNUT1JZJyBub3cgcmV2ZXJ0cyB0aGUgY29udGVudHMgb2YgdGhlIGRpcmVjdG9yeSBhcyB3ZWxs
LgogICAgICAoQWFyb24gQmVudGxleSkKIAorICAgKiAnYnpyIGluaXQnIG5vdyBhbHNvIHdvcmtz
IG9uIHJlbW90ZSBsb2NhdGlvbnMuCisgICAgIChXb3V0ZXIgdmFuIEhleXN0KQorCiAgIEJVRyBG
SVhFUzoKIAogICAgICogRml4IHNoYWRvd2VkIGRlZmluaXRpb24gb2YgVGVzdExvY2F0aW9uQ29u
ZmlnIHRoYXQgY2F1c2VkIHNvbWUgCgo=
=== modified file bzrlib/builtins.py // encoding:base64
LS0tIGJ6cmxpYi9idWlsdGlucy5weQorKysgYnpybGliL2J1aWx0aW5zLnB5CkBAIC0xMDA1LDgg
KzEwMDUsMTAgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPWdldF9mb3JtYXRf
dHlwZSksCiAgICAgICAgICAgICAgICAgICAgICBdCiAgICAgZGVmIHJ1bihzZWxmLCBsb2NhdGlv
bj1Ob25lLCBmb3JtYXQ9Tm9uZSk6CisgICAgICAgIGZyb20gYnpybGliLnRyYW5zcG9ydCBpbXBv
cnQgZ2V0X3RyYW5zcG9ydAogICAgICAgICBpZiBmb3JtYXQgaXMgTm9uZToKICAgICAgICAgICAg
IGZvcm1hdCA9IGdldF9mb3JtYXRfdHlwZSgnZGVmYXVsdCcpCisgICAgICAgIHRyYW5zcG9ydCA9
IGdldF90cmFuc3BvcnQobG9jYXRpb24pCiAgICAgICAgIGlmIGxvY2F0aW9uIGlzIE5vbmU6CiAg
ICAgICAgICAgICBsb2NhdGlvbiA9IHUnLicKICAgICAgICAgZWxzZToKQEAgLTEwMTUsOCArMTAx
Nyw5IEBACiAgICAgICAgICAgICAjIEp1c3QgdXNpbmcgb3MubWtkaXIsIHNpbmNlIEkgZG9uJ3QK
ICAgICAgICAgICAgICMgYmVsaWV2ZSB0aGF0IHdlIHdhbnQgdG8gY3JlYXRlIGEgYnVuY2ggb2YK
ICAgICAgICAgICAgICMgbG9jYXRpb25zIGlmIHRoZSB1c2VyIHN1cHBsaWVzIGFuIGV4dGVuZGVk
IHBhdGgKLSAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhsb2NhdGlvbik6Ci0gICAg
ICAgICAgICAgICAgb3MubWtkaXIobG9jYXRpb24pCisgICAgICAgICAgICBpZiBub3QgdHJhbnNw
b3J0LmhhcygnLicpOgorICAgICAgICAgICAgICAgIHRyYW5zcG9ydC5ta2RpcignJykKKyAgICAg
ICAgICAgICAgICAgICAgCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGV4aXN0aW5nX2J6cmRp
ciA9IGJ6cmRpci5CenJEaXIub3Blbihsb2NhdGlvbikKICAgICAgICAgZXhjZXB0IE5vdEJyYW5j
aEVycm9yOgpAQCAtMTAyNCwxMCArMTAyNywxMCBAQAogICAgICAgICAgICAgYnpyZGlyLkJ6ckRp
ci5jcmVhdGVfYnJhbmNoX2NvbnZlbmllbmNlKGxvY2F0aW9uLCBmb3JtYXQ9Zm9ybWF0KQogICAg
ICAgICBlbHNlOgogICAgICAgICAgICAgaWYgZXhpc3RpbmdfYnpyZGlyLmhhc19icmFuY2goKToK
LSAgICAgICAgICAgICAgICBpZiBleGlzdGluZ19ienJkaXIuaGFzX3dvcmtpbmd0cmVlKCk6Ci0g
ICAgICAgICAgICAgICAgICAgIHJhaXNlIGVycm9ycy5BbHJlYWR5QnJhbmNoRXJyb3IobG9jYXRp
b24pCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UgZXJy
b3JzLkJyYW5jaEV4aXN0c1dpdGhvdXRXb3JraW5nVHJlZShsb2NhdGlvbikKKyAgICAgICAgICAg
ICAgICBpZiBpc2luc3RhbmNlKHRyYW5zcG9ydCwgTG9jYWxUcmFuc3BvcnQpOgorICAgICAgICAg
ICAgICAgICAgICBpZiBub3QgZXhpc3RpbmdfYnpyZGlyLmhhc193b3JraW5ndHJlZSgpOgorICAg
ICAgICAgICAgICAgICAgICAgICAgcmFpc2UgZXJyb3JzLkJyYW5jaEV4aXN0c1dpdGhvdXRXb3Jr
aW5nVHJlZShsb2NhdGlvbikKKyAgICAgICAgICAgICAgICByYWlzZSBlcnJvcnMuQWxyZWFkeUJy
YW5jaEVycm9yKGxvY2F0aW9uKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBl
eGlzdGluZ19ienJkaXIuY3JlYXRlX2JyYW5jaCgpCiAgICAgICAgICAgICAgICAgZXhpc3Rpbmdf
YnpyZGlyLmNyZWF0ZV93b3JraW5ndHJlZSgpCgo=
=== modified file bzrlib/tests/blackbox/test_init.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy9ibGFja2JveC90ZXN0X2luaXQucHkKKysrIGJ6cmxpYi90ZXN0cy9i
bGFja2JveC90ZXN0X2luaXQucHkKQEAgLTIyLDYgKzIyLDcgQEAKIAogZnJvbSBienJsaWIuYnpy
ZGlyIGltcG9ydCBCenJEaXJNZXRhRm9ybWF0MQogZnJvbSBienJsaWIudGVzdHMuYmxhY2tib3gg
aW1wb3J0IEV4dGVybmFsQmFzZQorZnJvbSBienJsaWIudGVzdHMudGVzdF9zZnRwX3RyYW5zcG9y
dCBpbXBvcnQgVGVzdENhc2VXaXRoU0ZUUFNlcnZlcgogZnJvbSBienJsaWIud29ya2luZ3RyZWUg
aW1wb3J0IFdvcmtpbmdUcmVlCiAKIApAQCAtMTAwLDMgKzEwMSwyMCBAQAogICAgICAgICAjIHN1
Z2dlc3RzIHVzaW5nIGNoZWNrb3V0CiAgICAgICAgIHNlbGYuYXNzZXJ0Q29udGFpbnNSZShlcnIs
ICdvbnRhaW5zIGEgYnJhbmNoLipidXQgbm8gd29ya2luZyB0cmVlLipjaGVja291dCcpCiAKKwor
Y2xhc3MgVGVzdFNGVFBJbml0KFRlc3RDYXNlV2l0aFNGVFBTZXJ2ZXIpOgorCisgICAgZGVmIHRl
c3RfaW5pdChzZWxmKToKKyAgICAgICAgdXJsID0gc2VsZi5nZXRfdXJsKCkKKyAgICAgICAgb3V0
LCBlcnIgPSBzZWxmLnJ1bl9ienIoJ2luaXQnLCB1cmwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoJycsIG91dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJywgZXJyKQorCisgICAgICAg
IG91dCwgZXJyID0gc2VsZi5ydW5fYnpyKCdpbml0JywgdXJsLCByZXRjb2RlPTMpCisgICAgICAg
IHNlbGYuYXNzZXJ0Q29udGFpbnNSZShlcnIsICdBbHJlYWR5IGEgYnJhbmNoJykKKworICAgICAg
ICBzZWxmLnJ1bl9ienIoJ2NoZWNrb3V0JywgJy4nKQorICAgICAgICAjIHdoZW4gdGhlIHRyYW5z
cG9ydCBpcyBub3QgbG9jYWwsIGRvbid0IGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlIGJyYW5jaAor
ICAgICAgICAjIGhhdmluZyBhIHdvcmtpbmcgdHJlZSBvciBub3QuCisgICAgICAgIG91dCwgZXJy
ID0gc2VsZi5ydW5fYnpyKCdpbml0JywgdXJsLCByZXRjb2RlPTMpCisgICAgICAgIHNlbGYuYXNz
ZXJ0RmFsc2UocmUuc2VhcmNoKHInY2hlY2tvdXQnLCBlcnIpKQoK
# revision id: larstiq at larstiq.dyndns.org-20060702154600-848abd3894fadfc1
# sha1: 1b9ff80b42393bbd22d05b0c4a6538a08787f002
# inventory sha1: 62b4553333820aff78825ed00b8b7bbd144729f2
# parent ids:
# pqm at pqm.ubuntu.com-20060702004915-501855cc9fc14e10
# properties:
# branch-nick: remote-init
More information about the bazaar
mailing list