~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/builtins.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2006-04-13 22:37:15 UTC
  • mfrom: (1658.1.10 bzr.mbp.integration)
  • Revision ID: pqm@pqm.ubuntu.com-20060413223715-b826d3cb591fed82
(mbp) fix #38331, #3619

Show diffs side-by-side

added added

removed removed

Lines of Context:
52
52
        raise BzrCommandError("%s is not in the same branch as %s" %
53
53
                             (e.path, file_list[0]))
54
54
 
 
55
 
 
56
# XXX: Bad function name; should possibly also be a class method of
 
57
# WorkingTree rather than a function.
55
58
def internal_tree_files(file_list, default_branch=u'.'):
56
 
    """\
57
 
    Return a branch and list of branch-relative paths.
58
 
    If supplied file_list is empty or None, the branch default will be used,
59
 
    and returned file_list will match the original.
 
59
    """Convert command-line paths to a WorkingTree and relative paths.
 
60
 
 
61
    This is typically used for command-line processors that take one or
 
62
    more filenames, and infer the workingtree that contains them.
 
63
 
 
64
    The filenames given are not required to exist.
 
65
 
 
66
    :param file_list: Filenames to convert.  
 
67
 
 
68
    :param default_branch: Fallback tree path to use if file_list is empty or None.
 
69
 
 
70
    :return: workingtree, [relative_paths]
60
71
    """
61
72
    if file_list is None or len(file_list) == 0:
62
73
        return WorkingTree.open_containing(default_branch)[0], file_list
908
919
 
909
920
 
910
921
class cmd_init_repository(Command):
911
 
    """Create a shared repository to keep branches in."""
 
922
    """Create a shared repository to hold branches.
 
923
 
 
924
    New branches created under the repository directory will store their revisions
 
925
    in the repository, not in the branch directory, if the branch format supports
 
926
    shared storage.
 
927
 
 
928
    example:    
 
929
        bzr init-repo repo
 
930
        bzr init --format=metadir repo/trunk
 
931
        cd repo/trunk
 
932
        (add files here)
 
933
    """
912
934
    takes_args = ["location"] 
913
935
    takes_options = [Option('format', 
914
936
                            help='Use a specific format rather than the'
926
948
        from bzrlib.transport import get_transport
927
949
        if format is None:
928
950
            format = BzrDirMetaFormat1()
929
 
        get_transport(location).mkdir('')
930
 
        newdir = format.initialize(location)
 
951
        transport = get_transport(location)
 
952
        if not transport.has('.'):
 
953
            transport.mkdir('')
 
954
        newdir = format.initialize_on_transport(transport)
931
955
        repo = newdir.create_repository(shared=True)
932
956
        repo.set_make_working_trees(trees)
933
957