| 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 | 
 | 	gitlink::git-repack[1]. | 
 |  | 
 | --fix-thin:: | 
 | 	It is possible for gitlink:git-pack-objects[1] 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 gitlink:git-repack[1] 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. | 
 |  | 
 |  | 
 | 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 gitlink:git-repack[1] | 
 | mentioned above. | 
 |  | 
 |  | 
 | Author | 
 | ------ | 
 | Written by Sergey Vlasov <vsu@altlinux.ru> | 
 |  | 
 | Documentation | 
 | ------------- | 
 | Documentation by Sergey Vlasov | 
 |  | 
 | GIT | 
 | --- | 
 | Part of the gitlink:git[7] suite |