From 1b593e1ea4d2af0f6444d9a7788d5d99abd6fde5 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Sat, 11 Jan 2020 23:36:56 +0000 Subject: Squashed 'third_party/git/' content from commit cb71568594 git-subtree-dir: third_party/git git-subtree-split: cb715685942260375e1eb8153b0768a376e4ece7 --- Documentation/git-index-pack.txt | 108 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 Documentation/git-index-pack.txt (limited to 'Documentation/git-index-pack.txt') diff --git a/Documentation/git-index-pack.txt b/Documentation/git-index-pack.txt new file mode 100644 index 000000000000..d5b7560bfe2d --- /dev/null +++ b/Documentation/git-index-pack.txt @@ -0,0 +1,108 @@ +git-index-pack(1) +================= + +NAME +---- +git-index-pack - Build pack index file for an existing packed archive + + +SYNOPSIS +-------- +[verse] +'git index-pack' [-v] [-o ] +'git index-pack' --stdin [--fix-thin] [--keep] [-v] [-o ] + [] + + +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 :: + 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 . If + 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 + is not specified consider using --keep to + prevent a race condition between this process and + 'git repack'. + +--fix-thin:: + Fix a "thin" pack produced by `git pack-objects --thin` (see + linkgit:git-pack-objects[1] for details) by adding the + excluded objects the deltified objects are based on to the + pack. 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=:: + Like --keep create a .keep file before moving the index into + its final destination, but rather than creating an empty file + place '' followed by an LF into the .keep file. The '' + message can later be searched for within all .keep files to + locate any which have outlived their usefulness. + +--index-version=[,]:: + 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. + +--check-self-contained-and-connected:: + Die if the pack contains broken links. For internal use only. + +--fsck-objects:: + Die if the pack contains broken objects. For internal use only. + +--threads=:: + Specifies the number of threads to spawn when resolving + deltas. This requires that index-pack be compiled with + pthreads otherwise this option is ignored with a warning. + This is meant to reduce packing time on multiprocessor + machines. The required amount of memory for the delta search + window is however multiplied by the number of threads. + Specifying 0 will cause Git to auto-detect the number of CPU's + and use maximum 3 threads. + +--max-input-size=:: + Die, if the pack is larger than . + +NOTES +----- + +Once the index has been created, the list of object names is sorted +and the SHA-1 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. + +GIT +--- +Part of the linkgit:git[1] suite -- cgit 1.4.1