Allow meta projects to be created not under .repo/

Some types of manifests might prefer to put their meta project work
tree under topdir, rather than inside of the .repo/ directory.  We
can support that by allowing relpath to be optionally passed in.

Signed-off-by: Shawn O. Pearce <sop@google.com>
This commit is contained in:
Shawn O. Pearce 2009-07-03 18:04:27 -07:00
parent 87bda12e85
commit a7ce096047

View File

@ -1426,15 +1426,17 @@ class SyncBuffer(object):
class MetaProject(Project): class MetaProject(Project):
"""A special project housed under .repo. """A special project housed under .repo.
""" """
def __init__(self, manifest, name, gitdir, worktree): def __init__(self, manifest, name, gitdir, worktree, relpath=None):
repodir = manifest.repodir repodir = manifest.repodir
if relpath is None:
relpath = '.repo/%s' % name
Project.__init__(self, Project.__init__(self,
manifest = manifest, manifest = manifest,
name = name, name = name,
gitdir = gitdir, gitdir = gitdir,
worktree = worktree, worktree = worktree,
remote = RemoteSpec('origin'), remote = RemoteSpec('origin'),
relpath = '.repo/%s' % name, relpath = relpath,
revisionExpr = 'refs/heads/master', revisionExpr = 'refs/heads/master',
revisionId = None) revisionId = None)