| git-index-pack(1) | |
| ================= | |
| NAME | |
| ---- | |
| git-index-pack - Build pack index file for an existing packed archive | |
| SYNOPSIS | |
| -------- | |
| [verse] | |
| 'git index-pack' [-v] [-o <index-file>] <pack-file> | |
| 'git index-pack' --stdin [--fix-thin] [--keep] [-v] [-o <index-file>] | |
| [<pack-file>] | |
| DESCRIPTION | |
| ----------- | |
| Reads a packed archive (.pack) from the specified file, and | |
| builds a pack index file (.idx) for it. The packed archive | |
| together with the pack index can then be placed in the | |
| objects/pack/ directory of a git repository. | |
| OPTIONS | |
| ------- | |
| -v:: | |
| Be verbose about what is going on, including progress status. | |
| -o <index-file>:: | |
| Write the generated pack index into the specified | |
| file. Without this option the name of pack index | |
| file is constructed from the name of packed archive | |
| file by replacing .pack with .idx (and the program | |
| fails if the name of packed archive does not end | |
| with .pack). | |
| --stdin:: | |
| When this flag is provided, the pack is read from stdin | |
| instead and a copy is then written to <pack-file>. If | |
| <pack-file> is not specified, the pack is written to | |
| objects/pack/ directory of the current git repository with | |
| a default name determined from the pack content. If | |
| <pack-file> is not specified consider using --keep to | |
| prevent a race condition between this process and | |
| 'git-repack'. | |
| --fix-thin:: | |
| It is possible for 'git-pack-objects' to build | |
| "thin" pack, which records objects in deltified form based on | |
| objects not included in the pack to reduce network traffic. | |
| Those objects are expected to be present on the receiving end | |
| and they must be included in the pack for that pack to be self | |
| contained and indexable. Without this option any attempt to | |
| index a thin pack will fail. This option only makes sense in | |
| conjunction with --stdin. | |
| --keep:: | |
| Before moving the index into its final destination | |
| create an empty .keep file for the associated pack file. | |
| This option is usually necessary with --stdin to prevent a | |
| simultaneous 'git-repack' process from deleting | |
| the newly constructed pack and index before refs can be | |
| updated to use objects contained in the pack. | |
| --keep='why':: | |
| Like --keep create a .keep file before moving the index into | |
| its final destination, but rather than creating an empty file | |
| place 'why' followed by an LF into the .keep file. The 'why' | |
| message can later be searched for within all .keep files to | |
| locate any which have outlived their usefulness. | |
| --index-version=<version>[,<offset>]:: | |
| This is intended to be used by the test suite only. It allows | |
| to force the version for the generated pack index, and to force | |
| 64-bit index entries on objects located above the given offset. | |
| --strict:: | |
| Die, if the pack contains broken objects or links. | |
| Note | |
| ---- | |
| Once the index has been created, the list of object names is sorted | |
| and the SHA1 hash of that list is printed to stdout. If --stdin was | |
| also used then this is prefixed by either "pack\t", or "keep\t" if a | |
| new .keep file was successfully created. This is useful to remove a | |
| .keep file used as a lock to prevent the race with 'git-repack' | |
| mentioned above. | |
| Author | |
| ------ | |
| Written by Sergey Vlasov <vsu@altlinux.ru> | |
| Documentation | |
| ------------- | |
| Documentation by Sergey Vlasov | |
| GIT | |
| --- | |
| Part of the linkgit:git[1] suite |