diff options
Diffstat (limited to 'docs/manifest-format.md')
| -rw-r--r-- | docs/manifest-format.md | 58 |
1 files changed, 47 insertions, 11 deletions
diff --git a/docs/manifest-format.md b/docs/manifest-format.md index da83d0dd..8e0049b3 100644 --- a/docs/manifest-format.md +++ b/docs/manifest-format.md | |||
| @@ -31,11 +31,12 @@ following DTD: | |||
| 31 | extend-project*, | 31 | extend-project*, |
| 32 | repo-hooks?, | 32 | repo-hooks?, |
| 33 | superproject?, | 33 | superproject?, |
| 34 | contactinfo?, | ||
| 34 | include*)> | 35 | include*)> |
| 35 | 36 | ||
| 36 | <!ELEMENT notice (#PCDATA)> | 37 | <!ELEMENT notice (#PCDATA)> |
| 37 | 38 | ||
| 38 | <!ELEMENT remote EMPTY> | 39 | <!ELEMENT remote (annotation*)> |
| 39 | <!ATTLIST remote name ID #REQUIRED> | 40 | <!ATTLIST remote name ID #REQUIRED> |
| 40 | <!ATTLIST remote alias CDATA #IMPLIED> | 41 | <!ATTLIST remote alias CDATA #IMPLIED> |
| 41 | <!ATTLIST remote fetch CDATA #REQUIRED> | 42 | <!ATTLIST remote fetch CDATA #REQUIRED> |
| @@ -89,20 +90,26 @@ following DTD: | |||
| 89 | <!ELEMENT extend-project EMPTY> | 90 | <!ELEMENT extend-project EMPTY> |
| 90 | <!ATTLIST extend-project name CDATA #REQUIRED> | 91 | <!ATTLIST extend-project name CDATA #REQUIRED> |
| 91 | <!ATTLIST extend-project path CDATA #IMPLIED> | 92 | <!ATTLIST extend-project path CDATA #IMPLIED> |
| 93 | <!ATTLIST extend-project dest-path CDATA #IMPLIED> | ||
| 92 | <!ATTLIST extend-project groups CDATA #IMPLIED> | 94 | <!ATTLIST extend-project groups CDATA #IMPLIED> |
| 93 | <!ATTLIST extend-project revision CDATA #IMPLIED> | 95 | <!ATTLIST extend-project revision CDATA #IMPLIED> |
| 94 | <!ATTLIST extend-project remote CDATA #IMPLIED> | 96 | <!ATTLIST extend-project remote CDATA #IMPLIED> |
| 95 | 97 | ||
| 96 | <!ELEMENT remove-project EMPTY> | 98 | <!ELEMENT remove-project EMPTY> |
| 97 | <!ATTLIST remove-project name CDATA #REQUIRED> | 99 | <!ATTLIST remove-project name CDATA #REQUIRED> |
| 100 | <!ATTLIST remove-project optional CDATA #IMPLIED> | ||
| 98 | 101 | ||
| 99 | <!ELEMENT repo-hooks EMPTY> | 102 | <!ELEMENT repo-hooks EMPTY> |
| 100 | <!ATTLIST repo-hooks in-project CDATA #REQUIRED> | 103 | <!ATTLIST repo-hooks in-project CDATA #REQUIRED> |
| 101 | <!ATTLIST repo-hooks enabled-list CDATA #REQUIRED> | 104 | <!ATTLIST repo-hooks enabled-list CDATA #REQUIRED> |
| 102 | 105 | ||
| 103 | <!ELEMENT superproject (EMPTY)> | 106 | <!ELEMENT superproject EMPTY> |
| 104 | <!ATTLIST superproject name CDATA #REQUIRED> | 107 | <!ATTLIST superproject name CDATA #REQUIRED> |
| 105 | <!ATTLIST superproject remote IDREF #IMPLIED> | 108 | <!ATTLIST superproject remote IDREF #IMPLIED> |
| 109 | <!ATTLIST superproject revision CDATA #IMPLIED> | ||
| 110 | |||
| 111 | <!ELEMENT contactinfo EMPTY> | ||
| 112 | <!ATTLIST contactinfo bugurl CDATA #REQUIRED> | ||
| 106 | 113 | ||
| 107 | <!ELEMENT include EMPTY> | 114 | <!ELEMENT include EMPTY> |
| 108 | <!ATTLIST include name CDATA #REQUIRED> | 115 | <!ATTLIST include name CDATA #REQUIRED> |
| @@ -331,6 +338,11 @@ against changes to the original manifest. | |||
| 331 | Attribute `path`: If specified, limit the change to projects checked out | 338 | Attribute `path`: If specified, limit the change to projects checked out |
| 332 | at the specified path, rather than all projects with the given name. | 339 | at the specified path, rather than all projects with the given name. |
| 333 | 340 | ||
| 341 | Attribute `dest-path`: If specified, a path relative to the top directory | ||
| 342 | of the repo client where the Git working directory for this project | ||
| 343 | should be placed. This is used to move a project in the checkout by | ||
| 344 | overriding the existing `path` setting. | ||
| 345 | |||
| 334 | Attribute `groups`: List of additional groups to which this project | 346 | Attribute `groups`: List of additional groups to which this project |
| 335 | belongs. Same syntax as the corresponding element of `project`. | 347 | belongs. Same syntax as the corresponding element of `project`. |
| 336 | 348 | ||
| @@ -343,12 +355,12 @@ project. Same syntax as the corresponding element of `project`. | |||
| 343 | ### Element annotation | 355 | ### Element annotation |
| 344 | 356 | ||
| 345 | Zero or more annotation elements may be specified as children of a | 357 | Zero or more annotation elements may be specified as children of a |
| 346 | project element. Each element describes a name-value pair that will be | 358 | project or remote element. Each element describes a name-value pair. |
| 347 | exported into each project's environment during a 'forall' command, | 359 | For projects, this name-value pair will be exported into each project's |
| 348 | prefixed with REPO__. In addition, there is an optional attribute | 360 | environment during a 'forall' command, prefixed with `REPO__`. In addition, |
| 349 | "keep" which accepts the case insensitive values "true" (default) or | 361 | there is an optional attribute "keep" which accepts the case insensitive values |
| 350 | "false". This attribute determines whether or not the annotation will | 362 | "true" (default) or "false". This attribute determines whether or not the |
| 351 | be kept when exported with the manifest subcommand. | 363 | annotation will be kept when exported with the manifest subcommand. |
| 352 | 364 | ||
| 353 | ### Element copyfile | 365 | ### Element copyfile |
| 354 | 366 | ||
| @@ -389,6 +401,9 @@ This element is mostly useful in a local manifest file, where | |||
| 389 | the user can remove a project, and possibly replace it with their | 401 | the user can remove a project, and possibly replace it with their |
| 390 | own definition. | 402 | own definition. |
| 391 | 403 | ||
| 404 | Attribute `optional`: Set to true to ignore remove-project elements with no | ||
| 405 | matching `project` element. | ||
| 406 | |||
| 392 | ### Element repo-hooks | 407 | ### Element repo-hooks |
| 393 | 408 | ||
| 394 | NB: See the [practical documentation](./repo-hooks.md) for using repo hooks. | 409 | NB: See the [practical documentation](./repo-hooks.md) for using repo hooks. |
| @@ -405,7 +420,7 @@ Attribute `enabled-list`: List of hooks to use, whitespace or comma separated. | |||
| 405 | ### Element superproject | 420 | ### Element superproject |
| 406 | 421 | ||
| 407 | *** | 422 | *** |
| 408 | *Note*: This is currently a WIP. | 423 | *Note*: This is currently a WIP. |
| 409 | *** | 424 | *** |
| 410 | 425 | ||
| 411 | NB: See the [git superprojects documentation]( | 426 | NB: See the [git superprojects documentation]( |
| @@ -424,6 +439,24 @@ same meaning as project's name attribute. See the | |||
| 424 | Attribute `remote`: Name of a previously defined remote element. | 439 | Attribute `remote`: Name of a previously defined remote element. |
| 425 | If not supplied the remote given by the default element is used. | 440 | If not supplied the remote given by the default element is used. |
| 426 | 441 | ||
| 442 | Attribute `revision`: Name of the Git branch the manifest wants | ||
| 443 | to track for this superproject. If not supplied the revision given | ||
| 444 | by the remote element is used if applicable, else the default | ||
| 445 | element is used. | ||
| 446 | |||
| 447 | ### Element contactinfo | ||
| 448 | |||
| 449 | *** | ||
| 450 | *Note*: This is currently a WIP. | ||
| 451 | *** | ||
| 452 | |||
| 453 | This element is used to let manifest authors self-register contact info. | ||
| 454 | It has "bugurl" as a required atrribute. This element can be repeated, | ||
| 455 | and any later entries will clobber earlier ones. This would allow manifest | ||
| 456 | authors who extend manifests to specify their own contact info. | ||
| 457 | |||
| 458 | Attribute `bugurl`: The URL to file a bug against the manifest owner. | ||
| 459 | |||
| 427 | ### Element include | 460 | ### Element include |
| 428 | 461 | ||
| 429 | This element provides the capability of including another manifest | 462 | This element provides the capability of including another manifest |
| @@ -468,6 +501,9 @@ these extra projects. | |||
| 468 | Manifest files stored in `$TOP_DIR/.repo/local_manifests/*.xml` will | 501 | Manifest files stored in `$TOP_DIR/.repo/local_manifests/*.xml` will |
| 469 | be loaded in alphabetical order. | 502 | be loaded in alphabetical order. |
| 470 | 503 | ||
| 504 | Projects from local manifest files are added into | ||
| 505 | local::<local manifest filename> group. | ||
| 506 | |||
| 471 | The legacy `$TOP_DIR/.repo/local_manifest.xml` path is no longer supported. | 507 | The legacy `$TOP_DIR/.repo/local_manifest.xml` path is no longer supported. |
| 472 | 508 | ||
| 473 | 509 | ||
