~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/bzrdir.py

  • Committer: Patch Queue Manager
  • Date: 2011-11-17 19:50:38 UTC
  • mfrom: (5268.8.23 switch-colocated)
  • Revision ID: pqm@pqm.ubuntu.com-20111117195038-1e3ypqmovs2bjhtp
(jelmer) Support switching to colocated branches in "bzr switch". (Jelmer
 Vernooij)

Show diffs side-by-side

added added

removed removed

Lines of Context:
375
375
        target_transport.ensure_base()
376
376
        cloning_format = self.cloning_metadir(stacked)
377
377
        # Create/update the result branch
378
 
        result = cloning_format.initialize_on_transport(target_transport)
 
378
        try:
 
379
            result = controldir.ControlDir.open_from_transport(target_transport)
 
380
        except errors.NotBranchError:
 
381
            result = cloning_format.initialize_on_transport(target_transport)
379
382
        source_branch, source_repository = self._find_source_repo(
380
383
            add_cleanup, source_branch)
381
384
        fetch_spec_factory.source_branch = source_branch
414
417
        mutter("created new branch %r" % (result_branch,))
415
418
 
416
419
        # Create/update the result working tree
417
 
        if (create_tree_if_local and
 
420
        if (create_tree_if_local and not result.has_workingtree() and
418
421
            isinstance(target_transport, local.LocalTransport) and
419
422
            (result_repo is None or result_repo.make_working_trees())):
420
423
            wt = result.create_workingtree(accelerator_tree=accelerator_tree,