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