| git-multi-pack-index(1) |
| ======================= |
| |
| NAME |
| ---- |
| git-multi-pack-index - Write and verify multi-pack-indexes |
| |
| |
| SYNOPSIS |
| -------- |
| [verse] |
| 'git multi-pack-index' [--object-dir=<dir>] [--[no-]progress] |
| [--preferred-pack=<pack>] <subcommand> |
| |
| DESCRIPTION |
| ----------- |
| Write or verify a multi-pack-index (MIDX) file. |
| |
| OPTIONS |
| ------- |
| |
| --object-dir=<dir>:: |
| Use given directory for the location of Git objects. We check |
| `<dir>/packs/multi-pack-index` for the current MIDX file, and |
| `<dir>/packs` for the pack-files to index. |
| |
| --[no-]progress:: |
| Turn progress on/off explicitly. If neither is specified, progress is |
| shown if standard error is connected to a terminal. |
| |
| The following subcommands are available: |
| |
| write:: |
| Write a new MIDX file. The following options are available for |
| the `write` sub-command: |
| + |
| -- |
| --preferred-pack=<pack>:: |
| Optionally specify the tie-breaking pack used when |
| multiple packs contain the same object. If not given, |
| ties are broken in favor of the pack with the lowest |
| mtime. |
| -- |
| |
| verify:: |
| Verify the contents of the MIDX file. |
| |
| expire:: |
| Delete the pack-files that are tracked by the MIDX file, but |
| have no objects referenced by the MIDX. Rewrite the MIDX file |
| afterward to remove all references to these pack-files. |
| |
| repack:: |
| Create a new pack-file containing objects in small pack-files |
| referenced by the multi-pack-index. If the size given by the |
| `--batch-size=<size>` argument is zero, then create a pack |
| containing all objects referenced by the multi-pack-index. For |
| a non-zero batch size, Select the pack-files by examining packs |
| from oldest-to-newest, computing the "expected size" by counting |
| the number of objects in the pack referenced by the |
| multi-pack-index, then divide by the total number of objects in |
| the pack and multiply by the pack size. We select packs with |
| expected size below the batch size until the set of packs have |
| total expected size at least the batch size, or all pack-files |
| are considered. If only one pack-file is selected, then do |
| nothing. If a new pack-file is created, rewrite the |
| multi-pack-index to reference the new pack-file. A later run of |
| 'git multi-pack-index expire' will delete the pack-files that |
| were part of this batch. |
| + |
| If `repack.packKeptObjects` is `false`, then any pack-files with an |
| associated `.keep` file will not be selected for the batch to repack. |
| |
| |
| EXAMPLES |
| -------- |
| |
| * Write a MIDX file for the packfiles in the current .git folder. |
| + |
| ----------------------------------------------- |
| $ git multi-pack-index write |
| ----------------------------------------------- |
| |
| * Write a MIDX file for the packfiles in an alternate object store. |
| + |
| ----------------------------------------------- |
| $ git multi-pack-index --object-dir <alt> write |
| ----------------------------------------------- |
| |
| * Verify the MIDX file for the packfiles in the current .git folder. |
| + |
| ----------------------------------------------- |
| $ git multi-pack-index verify |
| ----------------------------------------------- |
| |
| |
| SEE ALSO |
| -------- |
| See link:technical/multi-pack-index.html[The Multi-Pack-Index Design |
| Document] and link:technical/pack-format.html[The Multi-Pack-Index |
| Format] for more information on the multi-pack-index feature. |
| |
| |
| GIT |
| --- |
| Part of the linkgit:git[1] suite |