diff options
author | Mike Frysinger <vapier@google.com> | 2021-03-09 11:56:24 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@google.com> | 2021-03-12 16:30:37 +0000 |
commit | 68d5d4dfe5375be53f935c8b72060a56801dda24 (patch) | |
tree | ae7a56c5c69ca993b1befc235a3a58b029b76ea6 | |
parent | a3794e9c6f2b05f7801b24f4a897a55f750f2b67 (diff) | |
download | git-repo-68d5d4dfe5375be53f935c8b72060a56801dda24.tar.gz |
document the new manifest restrictions on name & path settings
Bug: https://crbug.com/gerrit/14156
Change-Id: I473edab1173e6a266d0754c29d5dc7ff761f1359
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/299403
Reviewed-by: Michael Mortensen <mmortensen@google.com>
Tested-by: Mike Frysinger <vapier@google.com>
-rw-r--r-- | docs/manifest-format.md | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/docs/manifest-format.md b/docs/manifest-format.md index 6156333a..aa1580d9 100644 --- a/docs/manifest-format.md +++ b/docs/manifest-format.md | |||
@@ -252,12 +252,25 @@ name will be prefixed by the parent's. | |||
252 | The project name must match the name Gerrit knows, if Gerrit is | 252 | The project name must match the name Gerrit knows, if Gerrit is |
253 | being used for code reviews. | 253 | being used for code reviews. |
254 | 254 | ||
255 | "name" must not be empty, and may not be an absolute path or use "." or ".." | ||
256 | path components. It is always interpreted relative to the remote's fetch | ||
257 | settings, so if a different base path is needed, declare a different remote | ||
258 | with the new settings needed. | ||
259 | These restrictions are not enforced for [Local Manifests]. | ||
260 | |||
255 | Attribute `path`: An optional path relative to the top directory | 261 | Attribute `path`: An optional path relative to the top directory |
256 | of the repo client where the Git working directory for this project | 262 | of the repo client where the Git working directory for this project |
257 | should be placed. If not supplied the project name is used. | 263 | should be placed. If not supplied the project "name" is used. |
258 | If the project has a parent element, its path will be prefixed | 264 | If the project has a parent element, its path will be prefixed |
259 | by the parent's. | 265 | by the parent's. |
260 | 266 | ||
267 | "path" may not be an absolute path or use "." or ".." path components. | ||
268 | These restrictions are not enforced for [Local Manifests]. | ||
269 | |||
270 | If you want to place files into the root of the checkout (e.g. a README or | ||
271 | Makefile or another build script), use the [copyfile] or [linkfile] elements | ||
272 | instead. | ||
273 | |||
261 | Attribute `remote`: Name of a previously defined remote element. | 274 | Attribute `remote`: Name of a previously defined remote element. |
262 | If not supplied the remote given by the default element is used. | 275 | If not supplied the remote given by the default element is used. |
263 | 276 | ||
@@ -419,12 +432,15 @@ target manifest to include - it must be a usable manifest on its own. | |||
419 | Attribute `name`: the manifest to include, specified relative to | 432 | Attribute `name`: the manifest to include, specified relative to |
420 | the manifest repository's root. | 433 | the manifest repository's root. |
421 | 434 | ||
435 | "name" may not be an absolute path or use "." or ".." path components. | ||
436 | These restrictions are not enforced for [Local Manifests]. | ||
437 | |||
422 | Attribute `groups`: List of additional groups to which all projects | 438 | Attribute `groups`: List of additional groups to which all projects |
423 | in the included manifest belong. This appends and recurses, meaning | 439 | in the included manifest belong. This appends and recurses, meaning |
424 | all projects in sub-manifests carry all parent include groups. | 440 | all projects in sub-manifests carry all parent include groups. |
425 | Same syntax as the corresponding element of `project`. | 441 | Same syntax as the corresponding element of `project`. |
426 | 442 | ||
427 | ## Local Manifests | 443 | ## Local Manifests {#local-manifests} |
428 | 444 | ||
429 | Additional remotes and projects may be added through local manifest | 445 | Additional remotes and projects may be added through local manifest |
430 | files stored in `$TOP_DIR/.repo/local_manifests/*.xml`. | 446 | files stored in `$TOP_DIR/.repo/local_manifests/*.xml`. |
@@ -452,3 +468,8 @@ Manifest files stored in `$TOP_DIR/.repo/local_manifests/*.xml` will | |||
452 | be loaded in alphabetical order. | 468 | be loaded in alphabetical order. |
453 | 469 | ||
454 | The legacy `$TOP_DIR/.repo/local_manifest.xml` path is no longer supported. | 470 | The legacy `$TOP_DIR/.repo/local_manifest.xml` path is no longer supported. |
471 | |||
472 | |||
473 | [copyfile]: #Element-copyfile | ||
474 | [linkfile]: #Element-linkfile | ||
475 | [Local Manifests]: #local-manifests | ||