'\" t
.\"     Title: git-index-pack
.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets v1.79.2 <http://docbook.sf.net/>
.\"      Date: 2025-10-05
.\"    Manual: Git Manual
.\"    Source: Git 2.51.0.433.g45547b60ac
.\"  Language: English
.\"
.TH "GIT\-INDEX\-PACK" "1" "2025-10-05" "Git 2\&.51\&.0\&.433\&.g45547b" "Git Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
git-index-pack \- Build pack index file for an existing packed archive
.SH "SYNOPSIS"
.sp
.nf
\fIgit index\-pack\fR [\-v] [\-o <index\-file>] [\-\-[no\-]rev\-index] <pack\-file>
\fIgit index\-pack\fR \-\-stdin [\-\-fix\-thin] [\-\-keep] [\-v] [\-o <index\-file>]
                  [\-\-[no\-]rev\-index] [<pack\-file>]
.fi
.SH "DESCRIPTION"
.sp
Reads a packed archive (\&.pack) from the specified file, builds a pack index file (\&.idx) for it, and optionally writes a reverse\-index (\&.rev) for the specified pack\&. The packed archive, together with the pack index, can then be placed in the objects/pack/ directory of a Git repository\&.
.SH "OPTIONS"
.PP
\-v
.RS 4
Be verbose about what is going on, including progress status\&.
.RE
.PP
\-o <index\-file>
.RS 4
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)\&.
.RE
.PP
\-\-rev\-index, \-\-no\-rev\-index
.RS 4
When this flag is provided, generate a reverse index (a \&.\fBrev\fR
file) corresponding to the given pack\&. If
\fB\-\-verify\fR
is given, ensure that the existing reverse index is correct\&. Takes precedence over
\fBpack\&.writeReverseIndex\fR\&.
.RE
.PP
\-\-stdin
.RS 4
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
\fIgit repack\fR\&.
.RE
.PP
\-\-fix\-thin
.RS 4
Fix a "thin" pack produced by
\fBgit\fR
\fBpack\-objects\fR
\fB\-\-thin\fR
(see
\fBgit-pack-objects\fR(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\&.
.RE
.PP
\-\-keep
.RS 4
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
\fIgit repack\fR
process from deleting the newly constructed pack and index before refs can be updated to use objects contained in the pack\&.
.RE
.PP
\-\-keep=<msg>
.RS 4
Like \-\-keep, create a \&.keep file before moving the index into its final destination\&. However, instead of creating an empty file place
\fI<msg>\fR
followed by an LF into the \&.keep file\&. The
\fI<msg>\fR
message can later be searched for within all \&.keep files to locate any which have outlived their usefulness\&.
.RE
.PP
\-\-index\-version=<version>[,<offset>]
.RS 4
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\&.
.RE
.PP
\-\-strict[=<msg\-id>=<severity>\&...\:]
.RS 4
Die, if the pack contains broken objects or links\&. An optional comma\-separated list of
\fI<msg\-id>\fR\fB=\fR\fI<severity>\fR
can be passed to change the severity of some possible issues, e\&.g\&.,
\fB\-\-strict=\fR"missingEmail=ignore,badTagName=error"\&. See the entry for the
\fBfsck\&.\fR\fI<msg\-id>\fR
configuration options in
\fBgit-fsck\fR(1)
for more information on the possible values of
\fI<msg\-id>\fR
and
\fI<severity>\fR\&.
.RE
.PP
\-\-progress\-title
.RS 4
For internal use only\&.
.sp
Set the title of the progress bar\&. The title is "Receiving objects" by default and "Indexing objects" when
\fB\-\-stdin\fR
is specified\&.
.RE
.PP
\-\-check\-self\-contained\-and\-connected
.RS 4
Die if the pack contains broken links\&. For internal use only\&.
.RE
.PP
\-\-fsck\-objects[=<msg\-id>=<severity>\&...\:]
.RS 4
Die if the pack contains broken objects, but unlike
\fB\-\-strict\fR, don\(cqt choke on broken links\&. If the pack contains a tree pointing to a \&.gitmodules blob that does not exist, prints the hash of that blob (for the caller to check) after the hash that goes into the name of the pack/idx file (see "Notes")\&.
.sp
An optional comma\-separated list of
\fI<msg\-id>\fR\fB=\fR\fI<severity>\fR
can be passed to change the severity of some possible issues, e\&.g\&.,
\fB\-\-fsck\-objects=\fR"missingEmail=ignore,badTagName=ignore"\&. See the entry for the
\fBfsck\&.\fR\fI<msg\-id>\fR
configuration options in
\fBgit-fsck\fR(1)
for more information on the possible values of
\fI<msg\-id>\fR
and
\fI<severity>\fR\&.
.RE
.PP
\-\-threads=<n>
.RS 4
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\(cqs and use maximum 3 threads\&.
.RE
.PP
\-\-max\-input\-size=<size>
.RS 4
Die, if the pack is larger than <size>\&.
.RE
.PP
\-\-object\-format=<hash\-algorithm>
.RS 4
Specify the given object format (hash algorithm) for the pack\&. The valid values are
\fIsha1\fR
and (if enabled)
\fIsha256\fR\&. The default is the algorithm for the current repository (set by
\fBextensions\&.objectFormat\fR), or
\fIsha1\fR
if no value is set or outside a repository\&.
.sp
This option cannot be used with \-\-stdin\&.
.sp
Note: At present, there is no interoperability between SHA\-256 repositories and SHA\-1 repositories\&.
.RE
.sp
Historically, we warned that SHA\-256 repositories may later need backward incompatible changes when we introduce such interoperability features\&. Today, we only expect compatible changes\&. Furthermore, if such changes prove to be necessary, it can be expected that SHA\-256 repositories created with today\(cqs Git will be usable by future versions of Git without data loss\&.
.PP
\-\-promisor[=<message>]
.RS 4
Before committing the pack\-index, create a \&.promisor file for this pack\&. Particularly helpful when writing a promisor pack with \-\-fix\-thin since the name of the pack is not final until the pack has been fully written\&. If a
\fI<message>\fR
is provided, then that content will be written to the \&.promisor file for future reference\&. See
\m[blue]\fBpartial clone\fR\m[]\&\s-2\u[1]\d\s+2
for more information\&.
.sp
Also, if there are objects in the given pack that references non\-promisor objects (in the repo), repacks those non\-promisor objects into a promisor pack\&. This avoids a situation in which a repo has non\-promisor objects that are accessible through promisor objects\&.
.sp
Requires <pack\-file> to not be specified\&.
.RE
.SH "NOTES"
.sp
Once the index has been created, the hash that goes into the name of the pack/idx file is printed to stdout\&. If \-\-stdin was also used then this is prefixed by either "pack\et", or "keep\et" 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 \fIgit repack\fR mentioned above\&.
.SH "GIT"
.sp
Part of the \fBgit\fR(1) suite
.SH "NOTES"
.IP " 1." 4
partial clone
.RS 4
\%git-htmldocs/technical/partial-clone.html
.RE
