| .\" DO NOT MODIFY THIS FILE! It was generated by help2man. |
| .TH REPO "1" "October 2022" "repo init" "Repo Manual" |
| .SH NAME |
| repo \- repo init - manual page for repo init |
| .SH SYNOPSIS |
| .B repo |
| \fI\,init \/\fR[\fI\,options\/\fR] [\fI\,manifest url\/\fR] |
| .SH DESCRIPTION |
| Summary |
| .PP |
| Initialize a repo client checkout in the current directory |
| .SH OPTIONS |
| .TP |
| \fB\-h\fR, \fB\-\-help\fR |
| show this help message and exit |
| .SS Logging options: |
| .TP |
| \fB\-v\fR, \fB\-\-verbose\fR |
| show all output |
| .TP |
| \fB\-q\fR, \fB\-\-quiet\fR |
| only show errors |
| .SS Manifest options: |
| .TP |
| \fB\-u\fR URL, \fB\-\-manifest\-url\fR=\fI\,URL\/\fR |
| manifest repository location |
| .TP |
| \fB\-b\fR REVISION, \fB\-\-manifest\-branch\fR=\fI\,REVISION\/\fR |
| manifest branch or revision (use HEAD for default) |
| .TP |
| \fB\-m\fR NAME.xml, \fB\-\-manifest\-name\fR=\fI\,NAME\/\fR.xml |
| initial manifest file |
| .TP |
| \fB\-g\fR GROUP, \fB\-\-groups\fR=\fI\,GROUP\/\fR |
| restrict manifest projects to ones with specified |
| group(s) [default|all|G1,G2,G3|G4,\-G5,\-G6] |
| .TP |
| \fB\-p\fR PLATFORM, \fB\-\-platform\fR=\fI\,PLATFORM\/\fR |
| restrict manifest projects to ones with a specified |
| platform group [auto|all|none|linux|darwin|...] |
| .TP |
| \fB\-\-submodules\fR |
| sync any submodules associated with the manifest repo |
| .TP |
| \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 (0 for full clone); see git clone (default: 0) |
| .SS Manifest (only) checkout options: |
| .TP |
| \fB\-c\fR, \fB\-\-current\-branch\fR |
| fetch only current manifest branch from server |
| (default) |
| .TP |
| \fB\-\-no\-current\-branch\fR |
| fetch all manifest branches from server |
| .TP |
| \fB\-\-tags\fR |
| fetch tags in the manifest |
| .TP |
| \fB\-\-no\-tags\fR |
| don't fetch tags in the manifest |
| .SS Checkout modes: |
| .TP |
| \fB\-\-mirror\fR |
| create a replica of the remote repositories rather |
| than a client working directory |
| .TP |
| \fB\-\-archive\fR |
| checkout an archive instead of a git repository for |
| each project. See git archive. |
| .TP |
| \fB\-\-worktree\fR |
| use git\-worktree to manage projects |
| .SS Project checkout optimizations: |
| .TP |
| \fB\-\-reference\fR=\fI\,DIR\/\fR |
| location of mirror directory |
| .TP |
| \fB\-\-dissociate\fR |
| dissociate from reference mirrors after clone |
| .TP |
| \fB\-\-depth\fR=\fI\,DEPTH\/\fR |
| create a shallow clone with given depth; see git clone |
| .TP |
| \fB\-\-partial\-clone\fR |
| perform partial clone (https://gitscm.com/docs/gitrepositorylayout#_code_partialclone_code) |
| .TP |
| \fB\-\-no\-partial\-clone\fR |
| disable use of partial clone (https://gitscm.com/docs/gitrepositorylayout#_code_partialclone_code) |
| .TP |
| \fB\-\-partial\-clone\-exclude\fR=\fI\,PARTIAL_CLONE_EXCLUDE\/\fR |
| exclude the specified projects (a comma\-delimited |
| project names) from partial clone (https://gitscm.com/docs/gitrepositorylayout#_code_partialclone_code) |
| .TP |
| \fB\-\-clone\-filter\fR=\fI\,CLONE_FILTER\/\fR |
| filter for use with \fB\-\-partial\-clone\fR [default: |
| blob:none] |
| .TP |
| \fB\-\-use\-superproject\fR |
| use the manifest superproject to sync projects; |
| implies \fB\-c\fR |
| .TP |
| \fB\-\-no\-use\-superproject\fR |
| disable use of manifest superprojects |
| .TP |
| \fB\-\-clone\-bundle\fR |
| enable use of \fI\,/clone.bundle\/\fP on HTTP/HTTPS (default if |
| not \fB\-\-partial\-clone\fR) |
| .TP |
| \fB\-\-no\-clone\-bundle\fR |
| disable use of \fI\,/clone.bundle\/\fP on HTTP/HTTPS (default if |
| \fB\-\-partial\-clone\fR) |
| .TP |
| \fB\-\-git\-lfs\fR |
| enable Git LFS support |
| .TP |
| \fB\-\-no\-git\-lfs\fR |
| disable Git LFS support |
| .SS repo Version options: |
| .TP |
| \fB\-\-repo\-url\fR=\fI\,URL\/\fR |
| repo repository location ($REPO_URL) |
| .TP |
| \fB\-\-repo\-rev\fR=\fI\,REV\/\fR |
| repo branch or revision ($REPO_REV) |
| .TP |
| \fB\-\-no\-repo\-verify\fR |
| do not verify repo source code |
| .SS Other options: |
| .TP |
| \fB\-\-config\-name\fR |
| Always prompt for name/e\-mail |
| .SS Multi\-manifest: |
| .TP |
| \fB\-\-outer\-manifest\fR |
| operate starting at the outermost manifest |
| .TP |
| \fB\-\-no\-outer\-manifest\fR |
| do not operate on outer manifests |
| .TP |
| \fB\-\-this\-manifest\-only\fR |
| only operate on this (sub)manifest |
| .TP |
| \fB\-\-no\-this\-manifest\-only\fR, \fB\-\-all\-manifests\fR |
| operate on this manifest and its submanifests |
| .PP |
| Run `repo help init` to view the detailed manual. |
| .SH DETAILS |
| .PP |
| The 'repo init' command is run once to install and initialize repo. The latest |
| repo source code and manifest collection is downloaded from the server and is |
| installed in the .repo/ directory in the current working directory. |
| .PP |
| When creating a new checkout, the manifest URL is the only required setting. It |
| may be specified using the \fB\-\-manifest\-url\fR option, or as the first optional |
| argument. |
| .PP |
| The optional \fB\-b\fR argument can be used to select the manifest branch to checkout |
| and use. If no branch is specified, the remote's default branch is used. This is |
| equivalent to using \fB\-b\fR HEAD. |
| .PP |
| The optional \fB\-m\fR argument can be used to specify an alternate manifest to be |
| used. If no manifest is specified, the manifest default.xml will be used. |
| .PP |
| If the \fB\-\-standalone\-manifest\fR argument is set, the manifest will be downloaded |
| directly from the specified \fB\-\-manifest\-url\fR as a static file (rather than setting |
| up a manifest git checkout). With \fB\-\-standalone\-manifest\fR, the manifest will be |
| fully static and will not be re\-downloaded during subsesquent `repo init` and |
| `repo sync` calls. |
| .PP |
| The \fB\-\-reference\fR option can be used to point to a directory that has the content |
| of a \fB\-\-mirror\fR sync. This will make the working directory use as much data as |
| possible from the local reference directory when fetching from the server. This |
| will make the sync go a lot faster by reducing data traffic on the network. |
| .PP |
| The \fB\-\-dissociate\fR option can be used to borrow the objects from the directory |
| specified with the \fB\-\-reference\fR option only to reduce network transfer, and stop |
| borrowing from them after a first clone is made by making necessary local copies |
| of borrowed objects. |
| .PP |
| The \fB\-\-no\-clone\-bundle\fR option disables any attempt to use \fI\,$URL/clone.bundle\/\fP to |
| bootstrap a new Git repository from a resumeable bundle file on a content |
| delivery network. This may be necessary if there are problems with the local |
| Python HTTP client or proxy configuration, but the Git binary works. |
| .PP |
| Switching Manifest Branches |
| .PP |
| To switch to another manifest branch, `repo init \fB\-b\fR otherbranch` may be used in |
| an existing client. However, as this only updates the manifest, a subsequent |
| `repo sync` (or `repo sync \fB\-d\fR`) is necessary to update the working directory |
| files. |