~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/bzrdir.py

  • Committer: INADA Naoki
  • Date: 2011-05-14 14:32:02 UTC
  • mto: This revision was merged to the branch mainline in revision 5874.
  • Revision ID: songofacandy@gmail.com-20110514143202-47r07mp2ebipg2yq
Fix error when fix_sentence_endings=True.

Show diffs side-by-side

added added

removed removed

Lines of Context:
33
33
from bzrlib import (
34
34
    branch as _mod_branch,
35
35
    cleanup,
 
36
    config,
 
37
    controldir,
36
38
    errors,
37
39
    fetch,
38
40
    graph,
47
49
    ui,
48
50
    urlutils,
49
51
    win32utils,
50
 
    workingtree_3,
 
52
    workingtree,
51
53
    workingtree_4,
52
54
    )
53
55
from bzrlib.repofmt import knitpack_repo
63
65
    )
64
66
 
65
67
from bzrlib import (
66
 
    config,
67
 
    controldir,
68
68
    hooks,
69
69
    registry,
70
70
    )
239
239
        This is intended primarily as a building block for more sophisticated
240
240
        functionality, like finding trees under a directory, or finding
241
241
        branches that use a given repository.
242
 
 
243
242
        :param evaluate: An optional callable that yields recurse, value,
244
243
            where recurse controls whether this bzrdir is recursed into
245
244
            and value is the value to yield.  By default, all bzrdirs
432
431
 
433
432
        if revision_id is not None, then the clone operation may tune
434
433
            itself to download less data.
435
 
 
436
434
        :param accelerator_tree: A tree which can be used for retrieving file
437
435
            contents more quickly than the revision tree, i.e. a workingtree.
438
436
            The revision tree will be used for cases where accelerator_tree's
867
865
        """Open an existing branch which contains url.
868
866
 
869
867
        :param url: url to search from.
870
 
 
871
868
        See open_containing_from_transport for more detail.
872
869
        """
873
870
        transport = _mod_transport.get_transport(url, possible_transports)
1098
1095
 
1099
1096
 
1100
1097
class RepoInitHookParams(object):
1101
 
    """Object holding parameters passed to `*_repo_init` hooks.
 
1098
    """Object holding parameters passed to *_repo_init hooks.
1102
1099
 
1103
1100
    There are 4 fields that hooks may wish to access:
1104
1101
 
1416
1413
    @classmethod
1417
1414
    def get_format_string(cls):
1418
1415
        """Return the ASCII format string that identifies this format."""
1419
 
        raise NotImplementedError(cls.get_format_string)
 
1416
        raise NotImplementedError(self.get_format_string)
1420
1417
 
1421
1418
    def initialize_on_transport(self, transport):
1422
1419
        """Initialize a new bzrdir in the base directory of a Transport."""
1615
1612
 
1616
1613
    This is the first format with split out working tree, branch and repository
1617
1614
    disk storage.
1618
 
 
1619
1615
    It has:
1620
 
 
1621
 
    - Format 3 working trees [optional]
1622
 
    - Format 5 branches [optional]
1623
 
    - Format 7 repositories [optional]
 
1616
     - Format 3 working trees [optional]
 
1617
     - Format 5 branches [optional]
 
1618
     - Format 7 repositories [optional]
1624
1619
    """
1625
1620
 
1626
1621
    _lock_class = lockdir.LockDir
1888
1883
        else:
1889
1884
            # TODO: conversions of Branch and Tree should be done by
1890
1885
            # InterXFormat lookups
1891
 
            if (isinstance(tree, workingtree_3.WorkingTree3) and
 
1886
            if (isinstance(tree, workingtree.WorkingTree3) and
1892
1887
                not isinstance(tree, workingtree_4.DirStateWorkingTree) and
1893
1888
                isinstance(self.target_format.workingtree_format,
1894
1889
                    workingtree_4.DirStateWorkingTreeFormat)):
1994
1989
 
1995
1990
        Implementations may create a new repository or use a pre-exising
1996
1991
        repository.
1997
 
 
1998
1992
        :param make_working_trees: If creating a repository, set
1999
1993
            make_working_trees to this value (if non-None)
2000
1994
        :param shared: If creating a repository, make it shared if True
2009
2003
 
2010
2004
    def __init__(self, bzrdir, stack_on=None, stack_on_pwd=None,
2011
2005
                 require_stacking=False):
2012
 
        """Constructor.
2013
 
 
 
2006
        """
 
2007
        Constructor.
2014
2008
        :param bzrdir: The bzrdir to create the repository on.
2015
2009
        :param stack_on: A location to stack on
2016
2010
        :param stack_on_pwd: If stack_on is relative, the location it is
2116
2110
    'bzrlib.repofmt.knitrepo.RepositoryFormatKnit1',
2117
2111
    'Format using knits.  Recommended for interoperation with bzr <= 0.14.',
2118
2112
    branch_format='bzrlib.branch.BzrBranchFormat5',
2119
 
    tree_format='bzrlib.workingtree_3.WorkingTreeFormat3',
 
2113
    tree_format='bzrlib.workingtree.WorkingTreeFormat3',
2120
2114
    hidden=True,
2121
2115
    deprecated=True)
2122
2116
register_metadir(controldir.format_registry, 'dirstate',
2287
2281
    help='Same as 2a.')
2288
2282
 
2289
2283
# The current format that is made on 'bzr init'.
2290
 
format_name = config.GlobalStack().get('default_format')
2291
 
controldir.format_registry.set_default(format_name)
 
2284
format_name = config.GlobalConfig().get_user_option('default_format')
 
2285
if format_name is None:
 
2286
    controldir.format_registry.set_default('2a')
 
2287
else:
 
2288
    controldir.format_registry.set_default(format_name)
2292
2289
 
2293
2290
# XXX 2010-08-20 JRV: There is still a lot of code relying on
2294
2291
# bzrlib.bzrdir.format_registry existing. When BzrDir.create/BzrDir.open/etc