~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/bzrdir.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2009-02-10 06:29:49 UTC
  • mfrom: (3995.1.1 ianc-integration)
  • Revision ID: pqm@pqm.ubuntu.com-20090210062949-kj7rpejso2405ug1
Add --no-tree option to bzr branch (Daniel Watkins)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1061
1061
    def sprout(self, url, revision_id=None, force_new_repo=False,
1062
1062
               recurse='down', possible_transports=None,
1063
1063
               accelerator_tree=None, hardlink=False, stacked=False,
1064
 
               source_branch=None):
 
1064
               source_branch=None, create_tree_if_local=True):
1065
1065
        """Create a copy of this bzrdir prepared for use as a new line of
1066
1066
        development.
1067
1067
 
1082
1082
            where possible.
1083
1083
        :param stacked: If true, create a stacked branch referring to the
1084
1084
            location of this control directory.
 
1085
        :param create_tree_if_local: If true, a working-tree will be created
 
1086
            when working locally.
1085
1087
        """
1086
1088
        target_transport = get_transport(url, possible_transports)
1087
1089
        target_transport.ensure_base()
1134
1136
            result_branch.set_parent(parent_location)
1135
1137
 
1136
1138
        # Create/update the result working tree
1137
 
        if isinstance(target_transport, local.LocalTransport) and (
1138
 
            result_repo is None or result_repo.make_working_trees()):
 
1139
        if (create_tree_if_local and
 
1140
            isinstance(target_transport, local.LocalTransport) and
 
1141
            (result_repo is None or result_repo.make_working_trees())):
1139
1142
            wt = result.create_workingtree(accelerator_tree=accelerator_tree,
1140
1143
                hardlink=hardlink)
1141
1144
            wt.lock_write()
1335
1338
 
1336
1339
    def sprout(self, url, revision_id=None, force_new_repo=False,
1337
1340
               possible_transports=None, accelerator_tree=None,
1338
 
               hardlink=False, stacked=False):
 
1341
               hardlink=False, stacked=False, create_tree_if_local=True):
1339
1342
        """See BzrDir.sprout()."""
1340
1343
        if stacked:
1341
1344
            raise errors.UnstackableBranchFormat(
1342
1345
                self._format, self.root_transport.base)
 
1346
        if not create_tree_if_local:
 
1347
            raise errors.MustHaveWorkingTree(
 
1348
                self._format, self.root_transport.base)
1343
1349
        from bzrlib.workingtree import WorkingTreeFormat2
1344
1350
        self._make_tail(url)
1345
1351
        result = self._format._initialize_for_clone(url)
1351
1357
            self.open_branch().sprout(result, revision_id=revision_id)
1352
1358
        except errors.NotBranchError:
1353
1359
            pass
 
1360
 
1354
1361
        # we always want a working tree
1355
1362
        WorkingTreeFormat2().initialize(result,
1356
1363
                                        accelerator_tree=accelerator_tree,