summaryrefslogtreecommitdiffstats
path: root/docs/manifest-format.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/manifest-format.txt')
-rw-r--r--docs/manifest-format.txt44
1 files changed, 36 insertions, 8 deletions
diff --git a/docs/manifest-format.txt b/docs/manifest-format.txt
index e48b75fe..1aa93965 100644
--- a/docs/manifest-format.txt
+++ b/docs/manifest-format.txt
@@ -26,6 +26,7 @@ following DTD:
26 manifest-server?, 26 manifest-server?,
27 remove-project*, 27 remove-project*,
28 project*, 28 project*,
29 extend-project*,
29 repo-hooks?)> 30 repo-hooks?)>
30 31
31 <!ELEMENT notice (#PCDATA)> 32 <!ELEMENT notice (#PCDATA)>
@@ -35,6 +36,7 @@ following DTD:
35 <!ATTLIST remote alias CDATA #IMPLIED> 36 <!ATTLIST remote alias CDATA #IMPLIED>
36 <!ATTLIST remote fetch CDATA #REQUIRED> 37 <!ATTLIST remote fetch CDATA #REQUIRED>
37 <!ATTLIST remote review CDATA #IMPLIED> 38 <!ATTLIST remote review CDATA #IMPLIED>
39 <!ATTLIST remote revision CDATA #IMPLIED>
38 40
39 <!ELEMENT default (EMPTY)> 41 <!ELEMENT default (EMPTY)>
40 <!ATTLIST default remote IDREF #IMPLIED> 42 <!ATTLIST default remote IDREF #IMPLIED>
@@ -66,6 +68,11 @@ following DTD:
66 <!ATTLIST annotation value CDATA #REQUIRED> 68 <!ATTLIST annotation value CDATA #REQUIRED>
67 <!ATTLIST annotation keep CDATA "true"> 69 <!ATTLIST annotation keep CDATA "true">
68 70
71 <!ELEMENT extend-project>
72 <!ATTLIST extend-project name CDATA #REQUIRED>
73 <!ATTLIST extend-project path CDATA #IMPLIED>
74 <!ATTLIST extend-project groups CDATA #IMPLIED>
75
69 <!ELEMENT remove-project (EMPTY)> 76 <!ELEMENT remove-project (EMPTY)>
70 <!ATTLIST remove-project name CDATA #REQUIRED> 77 <!ATTLIST remove-project name CDATA #REQUIRED>
71 78
@@ -112,6 +119,10 @@ Attribute `review`: Hostname of the Gerrit server where reviews
112are uploaded to by `repo upload`. This attribute is optional; 119are uploaded to by `repo upload`. This attribute is optional;
113if not specified then `repo upload` will not function. 120if not specified then `repo upload` will not function.
114 121
122Attribute `revision`: Name of a Git branch (e.g. `master` or
123`refs/heads/master`). Remotes with their own revision will override
124the default revision.
125
115Element default 126Element default
116--------------- 127---------------
117 128
@@ -132,14 +143,14 @@ Project elements not setting their own `dest-branch` will inherit
132this value. If this value is not set, projects will use `revision` 143this value. If this value is not set, projects will use `revision`
133by default instead. 144by default instead.
134 145
135Attribute `sync_j`: Number of parallel jobs to use when synching. 146Attribute `sync-j`: Number of parallel jobs to use when synching.
136 147
137Attribute `sync_c`: Set to true to only sync the given Git 148Attribute `sync-c`: Set to true to only sync the given Git
138branch (specified in the `revision` attribute) rather than the 149branch (specified in the `revision` attribute) rather than the
139whole ref space. Project elements lacking a sync_c element of 150whole ref space. Project elements lacking a sync-c element of
140their own will use this value. 151their own will use this value.
141 152
142Attribute `sync_s`: Set to true to also sync sub-projects. 153Attribute `sync-s`: Set to true to also sync sub-projects.
143 154
144 155
145Element manifest-server 156Element manifest-server
@@ -208,7 +219,8 @@ to track for this project. Names can be relative to refs/heads
208(e.g. just "master") or absolute (e.g. "refs/heads/master"). 219(e.g. just "master") or absolute (e.g. "refs/heads/master").
209Tags and/or explicit SHA-1s should work in theory, but have not 220Tags and/or explicit SHA-1s should work in theory, but have not
210been extensively tested. If not supplied the revision given by 221been extensively tested. If not supplied the revision given by
211the default element is used. 222the remote element is used if applicable, else the default
223element is used.
212 224
213Attribute `dest-branch`: Name of a Git branch (e.g. `master`). 225Attribute `dest-branch`: Name of a Git branch (e.g. `master`).
214When using `repo upload`, changes will be submitted for code 226When using `repo upload`, changes will be submitted for code
@@ -226,13 +238,13 @@ group "notdefault", it will not be automatically downloaded by repo.
226If the project has a parent element, the `name` and `path` here 238If the project has a parent element, the `name` and `path` here
227are the prefixed ones. 239are the prefixed ones.
228 240
229Attribute `sync_c`: Set to true to only sync the given Git 241Attribute `sync-c`: Set to true to only sync the given Git
230branch (specified in the `revision` attribute) rather than the 242branch (specified in the `revision` attribute) rather than the
231whole ref space. 243whole ref space.
232 244
233Attribute `sync_s`: Set to true to also sync sub-projects. 245Attribute `sync-s`: Set to true to also sync sub-projects.
234 246
235Attribute `upstream`: Name of the Git branch in which a sha1 247Attribute `upstream`: Name of the Git ref in which a sha1
236can be found. Used when syncing a revision locked manifest in 248can be found. Used when syncing a revision locked manifest in
237-c mode to avoid having to sync the entire ref space. 249-c mode to avoid having to sync the entire ref space.
238 250
@@ -246,6 +258,22 @@ rather than the `name` attribute. This attribute only applies to the
246local mirrors syncing, it will be ignored when syncing the projects in a 258local mirrors syncing, it will be ignored when syncing the projects in a
247client working directory. 259client working directory.
248 260
261Element extend-project
262----------------------
263
264Modify the attributes of the named project.
265
266This element is mostly useful in a local manifest file, to modify the
267attributes of an existing project without completely replacing the
268existing project definition. This makes the local manifest more robust
269against changes to the original manifest.
270
271Attribute `path`: If specified, limit the change to projects checked out
272at the specified path, rather than all projects with the given name.
273
274Attribute `groups`: List of additional groups to which this project
275belongs. Same syntax as the corresponding element of `project`.
276
249Element annotation 277Element annotation
250------------------ 278------------------
251 279