diff --git a/man/repo-gitc-init.1 b/man/repo-gitc-init.1 index 88136de6..d6ef5ab6 100644 --- a/man/repo-gitc-init.1 +++ b/man/repo-gitc-init.1 @@ -45,6 +45,10 @@ sync any submodules associated with the manifest repo \fB\-\-standalone\-manifest\fR download the manifest as a static file rather then create a git checkout of the manifest repo +.TP +\fB\-\-manifest\-depth\fR=\fI\,DEPTH\/\fR +create a shallow clone of the manifest repo with given +depth; see git clone (default: 1) .SS Manifest (only) checkout options: .TP \fB\-\-current\-branch\fR diff --git a/man/repo-init.1 b/man/repo-init.1 index 32b3ea1b..0d45bf78 100644 --- a/man/repo-init.1 +++ b/man/repo-init.1 @@ -45,6 +45,10 @@ sync any submodules associated with the manifest repo \fB\-\-standalone\-manifest\fR download the manifest as a static file rather then create a git checkout of the manifest repo +.TP +\fB\-\-manifest\-depth\fR=\fI\,DEPTH\/\fR +create a shallow clone of the manifest repo with given +depth; see git clone (default: 1) .SS Manifest (only) checkout options: .TP \fB\-c\fR, \fB\-\-current\-branch\fR diff --git a/repo b/repo index 1940a319..e97cdd7d 100755 --- a/repo +++ b/repo @@ -316,6 +316,9 @@ def InitParser(parser, gitc_init=False): help='download the manifest as a static file ' 'rather then create a git checkout of ' 'the manifest repo') + group.add_option('--manifest-depth', type='int', default=1, metavar='DEPTH', + help='create a shallow clone of the manifest repo with ' + 'given depth; see git clone (default: %default)') # Options that only affect manifest project, and not any of the projects # specified in the manifest itself. diff --git a/subcmds/init.py b/subcmds/init.py index e4df6b37..bcccae06 100644 --- a/subcmds/init.py +++ b/subcmds/init.py @@ -109,6 +109,10 @@ to update the working directory files. Args: opt: options from optparse. """ + # Normally this value is set when instantiating the project, but the + # manifest project is special and is created when instantiating the + # manifest which happens before we parse options. + self.manifest.manifestProject.clone_depth = opt.manifest_depth if not self.manifest.manifestProject.Sync( manifest_url=opt.manifest_url, manifest_branch=opt.manifest_branch,