blob: 9957b64d5ecfc797ab6430483dfbb78c3ba6340f [file] [log] [blame]
Roger Shimizu0a1f5332021-06-20 21:41:05 +09001.\" DO NOT MODIFY THIS FILE! It was generated by help2man.
Jack Neusc474c9c2021-07-26 23:08:54 +00002.TH REPO "1" "September 2021" "repo init" "Repo Manual"
Roger Shimizu0a1f5332021-06-20 21:41:05 +09003.SH NAME
4repo \- repo init - manual page for repo init
5.SH SYNOPSIS
6.B repo
7\fI\,init \/\fR[\fI\,options\/\fR] [\fI\,manifest url\/\fR]
8.SH DESCRIPTION
9Summary
10.PP
11Initialize a repo client checkout in the current directory
12.SH OPTIONS
13.TP
14\fB\-h\fR, \fB\-\-help\fR
15show this help message and exit
16.SS Logging options:
17.TP
18\fB\-v\fR, \fB\-\-verbose\fR
19show all output
20.TP
21\fB\-q\fR, \fB\-\-quiet\fR
22only show errors
23.SS Manifest options:
24.TP
25\fB\-u\fR URL, \fB\-\-manifest\-url\fR=\fI\,URL\/\fR
26manifest repository location
27.TP
28\fB\-b\fR REVISION, \fB\-\-manifest\-branch\fR=\fI\,REVISION\/\fR
29manifest branch or revision (use HEAD for default)
30.TP
31\fB\-m\fR NAME.xml, \fB\-\-manifest\-name\fR=\fI\,NAME\/\fR.xml
32initial manifest file
33.TP
Jack Neusc474c9c2021-07-26 23:08:54 +000034\fB\-\-standalone\-manifest\fR
35download the manifest as a static file rather then
36create a git checkout of the manifest repo
37.TP
Roger Shimizu0a1f5332021-06-20 21:41:05 +090038\fB\-g\fR GROUP, \fB\-\-groups\fR=\fI\,GROUP\/\fR
39restrict manifest projects to ones with specified
40group(s) [default|all|G1,G2,G3|G4,\-G5,\-G6]
41.TP
42\fB\-p\fR PLATFORM, \fB\-\-platform\fR=\fI\,PLATFORM\/\fR
43restrict manifest projects to ones with a specified
44platform group [auto|all|none|linux|darwin|...]
45.TP
46\fB\-\-submodules\fR
47sync any submodules associated with the manifest repo
48.SS Manifest (only) checkout options:
49.TP
50\fB\-c\fR, \fB\-\-current\-branch\fR
51fetch only current manifest branch from server
52.TP
53\fB\-\-no\-current\-branch\fR
54fetch all manifest branches from server
55.TP
56\fB\-\-tags\fR
57fetch tags in the manifest
58.TP
59\fB\-\-no\-tags\fR
60don't fetch tags in the manifest
61.SS Checkout modes:
62.TP
63\fB\-\-mirror\fR
64create a replica of the remote repositories rather
65than a client working directory
66.TP
67\fB\-\-archive\fR
68checkout an archive instead of a git repository for
69each project. See git archive.
70.TP
71\fB\-\-worktree\fR
72use git\-worktree to manage projects
73.SS Project checkout optimizations:
74.TP
75\fB\-\-reference\fR=\fI\,DIR\/\fR
76location of mirror directory
77.TP
78\fB\-\-dissociate\fR
79dissociate from reference mirrors after clone
80.TP
81\fB\-\-depth\fR=\fI\,DEPTH\/\fR
82create a shallow clone with given depth; see git clone
83.TP
84\fB\-\-partial\-clone\fR
85perform partial clone (https://gitscm.com/docs/gitrepositorylayout#_code_partialclone_code)
86.TP
87\fB\-\-no\-partial\-clone\fR
88disable use of partial clone (https://gitscm.com/docs/gitrepositorylayout#_code_partialclone_code)
89.TP
90\fB\-\-partial\-clone\-exclude\fR=\fI\,PARTIAL_CLONE_EXCLUDE\/\fR
91exclude the specified projects (a comma\-delimited
92project names) from partial clone (https://gitscm.com/docs/gitrepositorylayout#_code_partialclone_code)
93.TP
94\fB\-\-clone\-filter\fR=\fI\,CLONE_FILTER\/\fR
95filter for use with \fB\-\-partial\-clone\fR [default:
96blob:none]
97.TP
98\fB\-\-use\-superproject\fR
99use the manifest superproject to sync projects
100.TP
101\fB\-\-no\-use\-superproject\fR
102disable use of manifest superprojects
103.TP
104\fB\-\-clone\-bundle\fR
105enable use of \fI\,/clone.bundle\/\fP on HTTP/HTTPS (default if
106not \fB\-\-partial\-clone\fR)
107.TP
108\fB\-\-no\-clone\-bundle\fR
109disable use of \fI\,/clone.bundle\/\fP on HTTP/HTTPS (default if
110\fB\-\-partial\-clone\fR)
111.SS repo Version options:
112.TP
113\fB\-\-repo\-url\fR=\fI\,URL\/\fR
114repo repository location ($REPO_URL)
115.TP
116\fB\-\-repo\-rev\fR=\fI\,REV\/\fR
117repo branch or revision ($REPO_REV)
118.TP
119\fB\-\-no\-repo\-verify\fR
120do not verify repo source code
121.SS Other options:
122.TP
123\fB\-\-config\-name\fR
124Always prompt for name/e\-mail
125.PP
126Run `repo help init` to view the detailed manual.
127.SH DETAILS
128.PP
129The 'repo init' command is run once to install and initialize repo. The latest
130repo source code and manifest collection is downloaded from the server and is
131installed in the .repo/ directory in the current working directory.
132.PP
133When creating a new checkout, the manifest URL is the only required setting. It
134may be specified using the \fB\-\-manifest\-url\fR option, or as the first optional
135argument.
136.PP
137The optional \fB\-b\fR argument can be used to select the manifest branch to checkout
138and use. If no branch is specified, the remote's default branch is used. This is
139equivalent to using \fB\-b\fR HEAD.
140.PP
141The optional \fB\-m\fR argument can be used to specify an alternate manifest to be
142used. If no manifest is specified, the manifest default.xml will be used.
143.PP
Jack Neusc474c9c2021-07-26 23:08:54 +0000144If the \fB\-\-standalone\-manifest\fR argument is set, the manifest will be downloaded
145directly from the specified \fB\-\-manifest\-url\fR as a static file (rather than setting
146up a manifest git checkout). With \fB\-\-standalone\-manifest\fR, the manifest will be
147fully static and will not be re\-downloaded during subsesquent `repo init` and
148`repo sync` calls.
149.PP
Roger Shimizu0a1f5332021-06-20 21:41:05 +0900150The \fB\-\-reference\fR option can be used to point to a directory that has the content
151of a \fB\-\-mirror\fR sync. This will make the working directory use as much data as
152possible from the local reference directory when fetching from the server. This
153will make the sync go a lot faster by reducing data traffic on the network.
154.PP
155The \fB\-\-dissociate\fR option can be used to borrow the objects from the directory
156specified with the \fB\-\-reference\fR option only to reduce network transfer, and stop
157borrowing from them after a first clone is made by making necessary local copies
158of borrowed objects.
159.PP
160The \fB\-\-no\-clone\-bundle\fR option disables any attempt to use \fI\,$URL/clone.bundle\/\fP to
161bootstrap a new Git repository from a resumeable bundle file on a content
162delivery network. This may be necessary if there are problems with the local
163Python HTTP client or proxy configuration, but the Git binary works.
164.PP
165Switching Manifest Branches
166.PP
167To switch to another manifest branch, `repo init \fB\-b\fR otherbranch` may be used in
168an existing client. However, as this only updates the manifest, a subsequent
169`repo sync` (or `repo sync \fB\-d\fR`) is necessary to update the working directory
170files.