Autogenerated manpages for v2.34.1-8-g35151
[git-manpages.git] / man1 / git-multi-pack-index.1
blob209bf542fe96c227a77b08ffba0b1bcd3c3610a5
1 '\" t
2 .\"     Title: git-multi-pack-index
3 .\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
4 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
5 .\"      Date: 11/24/2021
6 .\"    Manual: Git Manual
7 .\"    Source: Git 2.34.1.8.g35151cf072
8 .\"  Language: English
9 .\"
10 .TH "GIT\-MULTI\-PACK\-IN" "1" "11/24/2021" "Git 2\&.34\&.1\&.8\&.g35151cf0" "Git Manual"
11 .\" -----------------------------------------------------------------
12 .\" * Define some portability stuff
13 .\" -----------------------------------------------------------------
14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 .\" http://bugs.debian.org/507673
16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18 .ie \n(.g .ds Aq \(aq
19 .el       .ds Aq '
20 .\" -----------------------------------------------------------------
21 .\" * set default formatting
22 .\" -----------------------------------------------------------------
23 .\" disable hyphenation
24 .nh
25 .\" disable justification (adjust text to left margin only)
26 .ad l
27 .\" -----------------------------------------------------------------
28 .\" * MAIN CONTENT STARTS HERE *
29 .\" -----------------------------------------------------------------
30 .SH "NAME"
31 git-multi-pack-index \- Write and verify multi\-pack\-indexes
32 .SH "SYNOPSIS"
33 .sp
34 .nf
35 \fIgit multi\-pack\-index\fR [\-\-object\-dir=<dir>] [\-\-[no\-]bitmap] <sub\-command>
36 .fi
37 .sp
38 .SH "DESCRIPTION"
39 .sp
40 Write or verify a multi\-pack\-index (MIDX) file\&.
41 .SH "OPTIONS"
42 .PP
43 \-\-object\-dir=<dir>
44 .RS 4
45 Use given directory for the location of Git objects\&. We check
46 \fB<dir>/packs/multi\-pack\-index\fR
47 for the current MIDX file, and
48 \fB<dir>/packs\fR
49 for the pack\-files to index\&.
50 .sp
51 \fB<dir>\fR
52 must be an alternate of the current repository\&.
53 .RE
54 .PP
55 \-\-[no\-]progress
56 .RS 4
57 Turn progress on/off explicitly\&. If neither is specified, progress is shown if standard error is connected to a terminal\&. Supported by sub\-commands
58 \fBwrite\fR,
59 \fBverify\fR,
60 \fBexpire\fR, and `repack\&.
61 .RE
62 .sp
63 The following subcommands are available:
64 .PP
65 write
66 .RS 4
67 Write a new MIDX file\&. The following options are available for the
68 \fBwrite\fR
69 sub\-command:
70 .PP
71 \-\-preferred\-pack=<pack>
72 .RS 4
73 Optionally specify the tie\-breaking pack used when multiple packs contain the same object\&.
74 \fB<pack>\fR
75 must contain at least one object\&. If not given, ties are broken in favor of the pack with the lowest mtime\&.
76 .RE
77 .PP
78 \-\-[no\-]bitmap
79 .RS 4
80 Control whether or not a multi\-pack bitmap is written\&.
81 .RE
82 .PP
83 \-\-stdin\-packs
84 .RS 4
85 Write a multi\-pack index containing only the set of line\-delimited pack index basenames provided over stdin\&.
86 .RE
87 .PP
88 \-\-refs\-snapshot=<path>
89 .RS 4
90 With
91 \fB\-\-bitmap\fR, optionally specify a file which contains a "refs snapshot" taken prior to repacking\&.
92 .sp
93 A reference snapshot is composed of line\-delimited OIDs corresponding to the reference tips, usually taken by
94 \fBgit repack\fR
95 prior to generating a new pack\&. A line may optionally start with a
96 \fB+\fR
97 character to indicate that the reference which corresponds to that OID is "preferred" (see
98 \fBgit-config\fR(1)\(aqs
99 \fBpack\&.preferBitmapTips\fR\&.)
101 The file given at
102 \fB<path>\fR
103 is expected to be readable, and can contain duplicates\&. (If a given OID is given more than once, it is marked as preferred if at least one instance of it begins with the special
104 \fB+\fR
105 marker)\&.
109 verify
110 .RS 4
111 Verify the contents of the MIDX file\&.
114 expire
115 .RS 4
116 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\&.
119 repack
120 .RS 4
121 Create a new pack\-file containing objects in small pack\-files referenced by the multi\-pack\-index\&. If the size given by the
122 \fB\-\-batch\-size=<size>\fR
123 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
124 \fIgit multi\-pack\-index expire\fR
125 will delete the pack\-files that were part of this batch\&.
128 \fBrepack\&.packKeptObjects\fR
130 \fBfalse\fR, then any pack\-files with an associated
131 \fB\&.keep\fR
132 file will not be selected for the batch to repack\&.
134 .SH "EXAMPLES"
136 .RS 4
137 .ie n \{\
138 \h'-04'\(bu\h'+03'\c
140 .el \{\
141 .sp -1
142 .IP \(bu 2.3
144 Write a MIDX file for the packfiles in the current
145 \fB\&.git\fR
146 directory\&.
148 .if n \{\
149 .RS 4
152 $ git multi\-pack\-index write
154 .if n \{\
160 .RS 4
161 .ie n \{\
162 \h'-04'\(bu\h'+03'\c
164 .el \{\
165 .sp -1
166 .IP \(bu 2.3
168 Write a MIDX file for the packfiles in the current
169 \fB\&.git\fR
170 directory with a corresponding bitmap\&.
172 .if n \{\
173 .RS 4
176 $ git multi\-pack\-index write \-\-preferred\-pack=<pack> \-\-bitmap
178 .if n \{\
184 .RS 4
185 .ie n \{\
186 \h'-04'\(bu\h'+03'\c
188 .el \{\
189 .sp -1
190 .IP \(bu 2.3
192 Write a MIDX file for the packfiles in an alternate object store\&.
194 .if n \{\
195 .RS 4
198 $ git multi\-pack\-index \-\-object\-dir <alt> write
200 .if n \{\
206 .RS 4
207 .ie n \{\
208 \h'-04'\(bu\h'+03'\c
210 .el \{\
211 .sp -1
212 .IP \(bu 2.3
214 Verify the MIDX file for the packfiles in the current
215 \fB\&.git\fR
216 directory\&.
218 .if n \{\
219 .RS 4
222 $ git multi\-pack\-index verify
224 .if n \{\
229 .SH "SEE ALSO"
231 See \m[blue]\fBThe Multi\-Pack\-Index Design Document\fR\m[]\&\s-2\u[1]\d\s+2 and \m[blue]\fBThe Multi\-Pack\-Index Format\fR\m[]\&\s-2\u[2]\d\s+2 for more information on the multi\-pack\-index feature\&.
232 .SH "GIT"
234 Part of the \fBgit\fR(1) suite
235 .SH "NOTES"
236 .IP " 1." 4
237 The Multi-Pack-Index Design Document
238 .RS 4
239 \%git-htmldocs/technical/multi-pack-index.html
241 .IP " 2." 4
242 The Multi-Pack-Index Format
243 .RS 4
244 \%git-htmldocs/technical/pack-format.html