blob: 3fe4ab0ce85d5c25668bcbd238da049f4a5d5ca5 [file] [log] [blame]
Junio C Hamano52299462006-12-28 00:59:381<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
4<head>
Junio C Hamano9d971152012-12-19 00:43:115<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
Junio C Hamano61525f92014-01-17 22:46:496<meta name="generator" content="AsciiDoc 8.6.6" />
Junio C Hamano97bcb482010-11-25 03:16:077<title>git-gc(1)</title>
Junio C Hamano52299462006-12-28 00:59:388<style type="text/css">
Junio C Hamano9d971152012-12-19 00:43:119/* Shared CSS for AsciiDoc xhtml11 and html5 backends */
10
11/* Default font. */
12body {
13 font-family: Georgia,serif;
14}
15
16/* Title font. */
17h1, h2, h3, h4, h5, h6,
18div.title, caption.title,
19thead, p.table.header,
20#toctitle,
21#author, #revnumber, #revdate, #revremark,
22#footer {
23 font-family: Arial,Helvetica,sans-serif;
Junio C Hamano52299462006-12-28 00:59:3824}
25
26body {
27 margin: 1em 5% 1em 5%;
28}
29
Junio C Hamanoba4b9282008-07-06 05:20:3130a {
31 color: blue;
32 text-decoration: underline;
33}
34a:visited {
35 color: fuchsia;
36}
Junio C Hamano52299462006-12-28 00:59:3837
38em {
39 font-style: italic;
Junio C Hamano97bcb482010-11-25 03:16:0740 color: navy;
Junio C Hamano52299462006-12-28 00:59:3841}
42
43strong {
44 font-weight: bold;
Junio C Hamano97bcb482010-11-25 03:16:0745 color: #083194;
Junio C Hamano52299462006-12-28 00:59:3846}
47
Junio C Hamano52299462006-12-28 00:59:3848h1, h2, h3, h4, h5, h6 {
49 color: #527bbd;
Junio C Hamano52299462006-12-28 00:59:3850 margin-top: 1.2em;
51 margin-bottom: 0.5em;
52 line-height: 1.3;
53}
54
Junio C Hamanoba4b9282008-07-06 05:20:3155h1, h2, h3 {
Junio C Hamano52299462006-12-28 00:59:3856 border-bottom: 2px solid silver;
57}
58h2 {
Junio C Hamano52299462006-12-28 00:59:3859 padding-top: 0.5em;
60}
Junio C Hamanoba4b9282008-07-06 05:20:3161h3 {
62 float: left;
63}
64h3 + * {
65 clear: left;
66}
Junio C Hamano9d971152012-12-19 00:43:1167h5 {
68 font-size: 1.0em;
69}
Junio C Hamano52299462006-12-28 00:59:3870
71div.sectionbody {
Junio C Hamano52299462006-12-28 00:59:3872 margin-left: 0;
73}
74
75hr {
76 border: 1px solid silver;
77}
78
79p {
80 margin-top: 0.5em;
81 margin-bottom: 0.5em;
82}
83
Junio C Hamano97bcb482010-11-25 03:16:0784ul, ol, li > p {
85 margin-top: 0;
86}
Junio C Hamano9d971152012-12-19 00:43:1187ul > li { color: #aaa; }
88ul > li > * { color: black; }
Junio C Hamano97bcb482010-11-25 03:16:0789
Junio C Hamano61525f92014-01-17 22:46:4990pre {
Junio C Hamano52299462006-12-28 00:59:3891 padding: 0;
92 margin: 0;
93}
94
Junio C Hamano9d971152012-12-19 00:43:1195#author {
Junio C Hamano52299462006-12-28 00:59:3896 color: #527bbd;
Junio C Hamano52299462006-12-28 00:59:3897 font-weight: bold;
Junio C Hamanoba4b9282008-07-06 05:20:3198 font-size: 1.1em;
Junio C Hamano52299462006-12-28 00:59:3899}
Junio C Hamano9d971152012-12-19 00:43:11100#email {
Junio C Hamano52299462006-12-28 00:59:38101}
Junio C Hamano9d971152012-12-19 00:43:11102#revnumber, #revdate, #revremark {
Junio C Hamano52299462006-12-28 00:59:38103}
104
Junio C Hamano9d971152012-12-19 00:43:11105#footer {
Junio C Hamano52299462006-12-28 00:59:38106 font-size: small;
107 border-top: 2px solid silver;
108 padding-top: 0.5em;
109 margin-top: 4.0em;
110}
Junio C Hamano9d971152012-12-19 00:43:11111#footer-text {
Junio C Hamano52299462006-12-28 00:59:38112 float: left;
113 padding-bottom: 0.5em;
114}
Junio C Hamano9d971152012-12-19 00:43:11115#footer-badges {
Junio C Hamano52299462006-12-28 00:59:38116 float: right;
117 padding-bottom: 0.5em;
118}
119
Junio C Hamano9d971152012-12-19 00:43:11120#preamble {
Junio C Hamano97bcb482010-11-25 03:16:07121 margin-top: 1.5em;
122 margin-bottom: 1.5em;
123}
Junio C Hamano9d971152012-12-19 00:43:11124div.imageblock, div.exampleblock, div.verseblock,
Junio C Hamano52299462006-12-28 00:59:38125div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
126div.admonitionblock {
Junio C Hamano7bd050f2011-09-22 06:32:22127 margin-top: 1.0em;
Junio C Hamano52299462006-12-28 00:59:38128 margin-bottom: 1.5em;
129}
130div.admonitionblock {
Junio C Hamano7bd050f2011-09-22 06:32:22131 margin-top: 2.0em;
132 margin-bottom: 2.0em;
133 margin-right: 10%;
134 color: #606060;
Junio C Hamano52299462006-12-28 00:59:38135}
136
137div.content { /* Block element content. */
138 padding: 0;
139}
140
141/* Block element titles. */
142div.title, caption.title {
Junio C Hamano97bcb482010-11-25 03:16:07143 color: #527bbd;
Junio C Hamano52299462006-12-28 00:59:38144 font-weight: bold;
145 text-align: left;
146 margin-top: 1.0em;
147 margin-bottom: 0.5em;
148}
149div.title + * {
150 margin-top: 0;
151}
152
153td div.title:first-child {
154 margin-top: 0.0em;
155}
156div.content div.title:first-child {
157 margin-top: 0.0em;
158}
159div.content + div.title {
160 margin-top: 0.0em;
161}
162
163div.sidebarblock > div.content {
164 background: #ffffee;
Junio C Hamano9d971152012-12-19 00:43:11165 border: 1px solid #dddddd;
166 border-left: 4px solid #f0f0f0;
Junio C Hamano52299462006-12-28 00:59:38167 padding: 0.5em;
168}
169
170div.listingblock > div.content {
Junio C Hamano9d971152012-12-19 00:43:11171 border: 1px solid #dddddd;
172 border-left: 5px solid #f0f0f0;
173 background: #f8f8f8;
Junio C Hamano52299462006-12-28 00:59:38174 padding: 0.5em;
175}
176
Junio C Hamano7bd050f2011-09-22 06:32:22177div.quoteblock, div.verseblock {
178 padding-left: 1.0em;
179 margin-left: 1.0em;
Junio C Hamano97bcb482010-11-25 03:16:07180 margin-right: 10%;
Junio C Hamano9d971152012-12-19 00:43:11181 border-left: 5px solid #f0f0f0;
182 color: #888;
Junio C Hamano52299462006-12-28 00:59:38183}
Junio C Hamano7bd050f2011-09-22 06:32:22184
Junio C Hamano97bcb482010-11-25 03:16:07185div.quoteblock > div.attribution {
186 padding-top: 0.5em;
Junio C Hamano52299462006-12-28 00:59:38187 text-align: right;
188}
Junio C Hamano97bcb482010-11-25 03:16:07189
Junio C Hamano9d971152012-12-19 00:43:11190div.verseblock > pre.content {
191 font-family: inherit;
192 font-size: inherit;
Junio C Hamano97bcb482010-11-25 03:16:07193}
194div.verseblock > div.attribution {
195 padding-top: 0.75em;
196 text-align: left;
197}
198/* DEPRECATED: Pre version 8.2.7 verse style literal block. */
Junio C Hamanoba4b9282008-07-06 05:20:31199div.verseblock + div.attribution {
200 text-align: left;
201}
Junio C Hamano52299462006-12-28 00:59:38202
203div.admonitionblock .icon {
204 vertical-align: top;
205 font-size: 1.1em;
206 font-weight: bold;
207 text-decoration: underline;
208 color: #527bbd;
209 padding-right: 0.5em;
210}
211div.admonitionblock td.content {
212 padding-left: 0.5em;
Junio C Hamano7bd050f2011-09-22 06:32:22213 border-left: 3px solid #dddddd;
Junio C Hamano52299462006-12-28 00:59:38214}
215
216div.exampleblock > div.content {
Junio C Hamano7bd050f2011-09-22 06:32:22217 border-left: 3px solid #dddddd;
218 padding-left: 0.5em;
Junio C Hamano52299462006-12-28 00:59:38219}
220
Junio C Hamano52299462006-12-28 00:59:38221div.imageblock div.content { padding-left: 0; }
Junio C Hamano52299462006-12-28 00:59:38222span.image img { border-style: none; }
Junio C Hamano97bcb482010-11-25 03:16:07223a.image:visited { color: white; }
Junio C Hamano52299462006-12-28 00:59:38224
225dl {
226 margin-top: 0.8em;
227 margin-bottom: 0.8em;
228}
229dt {
230 margin-top: 0.5em;
231 margin-bottom: 0;
Junio C Hamano97bcb482010-11-25 03:16:07232 font-style: normal;
233 color: navy;
Junio C Hamano52299462006-12-28 00:59:38234}
235dd > *:first-child {
Junio C Hamano97bcb482010-11-25 03:16:07236 margin-top: 0.1em;
Junio C Hamano52299462006-12-28 00:59:38237}
238
239ul, ol {
240 list-style-position: outside;
241}
Junio C Hamano97bcb482010-11-25 03:16:07242ol.arabic {
243 list-style-type: decimal;
244}
245ol.loweralpha {
Junio C Hamano52299462006-12-28 00:59:38246 list-style-type: lower-alpha;
247}
Junio C Hamano97bcb482010-11-25 03:16:07248ol.upperalpha {
249 list-style-type: upper-alpha;
250}
251ol.lowerroman {
252 list-style-type: lower-roman;
253}
254ol.upperroman {
255 list-style-type: upper-roman;
256}
257
258div.compact ul, div.compact ol,
259div.compact p, div.compact p,
260div.compact div, div.compact div {
261 margin-top: 0.1em;
262 margin-bottom: 0.1em;
263}
Junio C Hamano52299462006-12-28 00:59:38264
Junio C Hamano52299462006-12-28 00:59:38265tfoot {
266 font-weight: bold;
267}
Junio C Hamano97bcb482010-11-25 03:16:07268td > div.verse {
269 white-space: pre;
270}
Junio C Hamano97bcb482010-11-25 03:16:07271
272div.hdlist {
Junio C Hamano52299462006-12-28 00:59:38273 margin-top: 0.8em;
274 margin-bottom: 0.8em;
275}
Junio C Hamano97bcb482010-11-25 03:16:07276div.hdlist tr {
277 padding-bottom: 15px;
Junio C Hamanoba4b9282008-07-06 05:20:31278}
Junio C Hamano97bcb482010-11-25 03:16:07279dt.hdlist1.strong, td.hdlist1.strong {
280 font-weight: bold;
281}
282td.hdlist1 {
Junio C Hamano52299462006-12-28 00:59:38283 vertical-align: top;
Junio C Hamano97bcb482010-11-25 03:16:07284 font-style: normal;
Junio C Hamano52299462006-12-28 00:59:38285 padding-right: 0.8em;
Junio C Hamano97bcb482010-11-25 03:16:07286 color: navy;
Junio C Hamano52299462006-12-28 00:59:38287}
Junio C Hamano97bcb482010-11-25 03:16:07288td.hdlist2 {
Junio C Hamano52299462006-12-28 00:59:38289 vertical-align: top;
290}
Junio C Hamano97bcb482010-11-25 03:16:07291div.hdlist.compact tr {
292 margin: 0;
293 padding-bottom: 0;
294}
295
296.comment {
297 background: yellow;
298}
Junio C Hamano52299462006-12-28 00:59:38299
Junio C Hamano7bd050f2011-09-22 06:32:22300.footnote, .footnoteref {
301 font-size: 0.8em;
302}
303
304span.footnote, span.footnoteref {
305 vertical-align: super;
306}
307
308#footnotes {
309 margin: 20px 0 20px 0;
310 padding: 7px 0 0 0;
311}
312
313#footnotes div.footnote {
314 margin: 0 0 5px 0;
315}
316
317#footnotes hr {
318 border: none;
319 border-top: 1px solid silver;
320 height: 1px;
321 text-align: left;
322 margin-left: 0;
323 width: 20%;
324 min-width: 100px;
325}
326
Junio C Hamano9d971152012-12-19 00:43:11327div.colist td {
328 padding-right: 0.5em;
329 padding-bottom: 0.3em;
330 vertical-align: top;
331}
332div.colist td img {
333 margin-top: 0.3em;
Junio C Hamano52299462006-12-28 00:59:38334}
Junio C Hamanoba4b9282008-07-06 05:20:31335
Junio C Hamano9d971152012-12-19 00:43:11336@media print {
337 #footer-badges { display: none; }
338}
339
340#toc {
Junio C Hamano7bd050f2011-09-22 06:32:22341 margin-bottom: 2.5em;
342}
343
Junio C Hamano9d971152012-12-19 00:43:11344#toctitle {
Junio C Hamanoba4b9282008-07-06 05:20:31345 color: #527bbd;
Junio C Hamanoba4b9282008-07-06 05:20:31346 font-size: 1.1em;
347 font-weight: bold;
348 margin-top: 1.0em;
349 margin-bottom: 0.1em;
350}
351
Junio C Hamano61525f92014-01-17 22:46:49352div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
Junio C Hamanoba4b9282008-07-06 05:20:31353 margin-top: 0;
354 margin-bottom: 0;
355}
356div.toclevel2 {
357 margin-left: 2em;
358 font-size: 0.9em;
359}
360div.toclevel3 {
361 margin-left: 4em;
362 font-size: 0.9em;
363}
364div.toclevel4 {
365 margin-left: 6em;
366 font-size: 0.9em;
367}
Junio C Hamano9d971152012-12-19 00:43:11368
369span.aqua { color: aqua; }
370span.black { color: black; }
371span.blue { color: blue; }
372span.fuchsia { color: fuchsia; }
373span.gray { color: gray; }
374span.green { color: green; }
375span.lime { color: lime; }
376span.maroon { color: maroon; }
377span.navy { color: navy; }
378span.olive { color: olive; }
379span.purple { color: purple; }
380span.red { color: red; }
381span.silver { color: silver; }
382span.teal { color: teal; }
383span.white { color: white; }
384span.yellow { color: yellow; }
385
386span.aqua-background { background: aqua; }
387span.black-background { background: black; }
388span.blue-background { background: blue; }
389span.fuchsia-background { background: fuchsia; }
390span.gray-background { background: gray; }
391span.green-background { background: green; }
392span.lime-background { background: lime; }
393span.maroon-background { background: maroon; }
394span.navy-background { background: navy; }
395span.olive-background { background: olive; }
396span.purple-background { background: purple; }
397span.red-background { background: red; }
398span.silver-background { background: silver; }
399span.teal-background { background: teal; }
400span.white-background { background: white; }
401span.yellow-background { background: yellow; }
402
403span.big { font-size: 2em; }
404span.small { font-size: 0.6em; }
405
406span.underline { text-decoration: underline; }
407span.overline { text-decoration: overline; }
408span.line-through { text-decoration: line-through; }
409
Junio C Hamano9d971152012-12-19 00:43:11410
411/*
412 * xhtml11 specific
413 *
414 * */
415
Junio C Hamano61525f92014-01-17 22:46:49416tt {
417 font-family: monospace;
418 font-size: inherit;
419 color: navy;
420}
421
Junio C Hamano9d971152012-12-19 00:43:11422div.tableblock {
423 margin-top: 1.0em;
424 margin-bottom: 1.5em;
425}
426div.tableblock > table {
427 border: 3px solid #527bbd;
428}
429thead, p.table.header {
430 font-weight: bold;
431 color: #527bbd;
432}
433p.table {
434 margin-top: 0;
435}
436/* Because the table frame attribute is overriden by CSS in most browsers. */
437div.tableblock > table[frame="void"] {
438 border-style: none;
439}
440div.tableblock > table[frame="hsides"] {
441 border-left-style: none;
442 border-right-style: none;
443}
444div.tableblock > table[frame="vsides"] {
445 border-top-style: none;
446 border-bottom-style: none;
447}
448
449
450/*
451 * html5 specific
452 *
453 * */
454
Junio C Hamano61525f92014-01-17 22:46:49455.monospaced {
456 font-family: monospace;
457 font-size: inherit;
458 color: navy;
459}
460
Junio C Hamano9d971152012-12-19 00:43:11461table.tableblock {
462 margin-top: 1.0em;
463 margin-bottom: 1.5em;
464}
465thead, p.tableblock.header {
466 font-weight: bold;
467 color: #527bbd;
468}
469p.tableblock {
470 margin-top: 0;
471}
472table.tableblock {
473 border-width: 3px;
474 border-spacing: 0px;
475 border-style: solid;
476 border-color: #527bbd;
477 border-collapse: collapse;
478}
479th.tableblock, td.tableblock {
480 border-width: 1px;
481 padding: 4px;
482 border-style: solid;
483 border-color: #527bbd;
484}
485
486table.tableblock.frame-topbot {
487 border-left-style: hidden;
488 border-right-style: hidden;
489}
490table.tableblock.frame-sides {
491 border-top-style: hidden;
492 border-bottom-style: hidden;
493}
494table.tableblock.frame-none {
495 border-style: hidden;
496}
497
498th.tableblock.halign-left, td.tableblock.halign-left {
499 text-align: left;
500}
501th.tableblock.halign-center, td.tableblock.halign-center {
502 text-align: center;
503}
504th.tableblock.halign-right, td.tableblock.halign-right {
505 text-align: right;
506}
507
508th.tableblock.valign-top, td.tableblock.valign-top {
509 vertical-align: top;
510}
511th.tableblock.valign-middle, td.tableblock.valign-middle {
512 vertical-align: middle;
513}
514th.tableblock.valign-bottom, td.tableblock.valign-bottom {
515 vertical-align: bottom;
516}
517
518
519/*
520 * manpage specific
521 *
522 * */
523
524body.manpage h1 {
Junio C Hamano97bcb482010-11-25 03:16:07525 padding-top: 0.5em;
526 padding-bottom: 0.5em;
527 border-top: 2px solid silver;
528 border-bottom: 2px solid silver;
529}
Junio C Hamano9d971152012-12-19 00:43:11530body.manpage h2 {
Junio C Hamano97bcb482010-11-25 03:16:07531 border-style: none;
532}
Junio C Hamano9d971152012-12-19 00:43:11533body.manpage div.sectionbody {
534 margin-left: 3em;
Junio C Hamano97bcb482010-11-25 03:16:07535}
536
537@media print {
Junio C Hamano9d971152012-12-19 00:43:11538 body.manpage div#toc { display: none; }
Junio C Hamano97bcb482010-11-25 03:16:07539}
Junio C Hamano52299462006-12-28 00:59:38540</style>
Junio C Hamano7bd050f2011-09-22 06:32:22541<script type="text/javascript">
542/*<![CDATA[*/
Junio C Hamano7bd050f2011-09-22 06:32:22543var asciidoc = { // Namespace.
544
545/////////////////////////////////////////////////////////////////////
546// Table Of Contents generator
547/////////////////////////////////////////////////////////////////////
548
549/* Author: Mihai Bazon, September 2002
550 * http://students.infoiasi.ro/~mishoo
551 *
552 * Table Of Content generator
553 * Version: 0.4
554 *
555 * Feel free to use this script under the terms of the GNU General Public
556 * License, as long as you do not remove or alter this notice.
557 */
558
559 /* modified by Troy D. Hanson, September 2006. License: GPL */
560 /* modified by Stuart Rackham, 2006, 2009. License: GPL */
561
562// toclevels = 1..4.
563toc: function (toclevels) {
564
565 function getText(el) {
566 var text = "";
567 for (var i = el.firstChild; i != null; i = i.nextSibling) {
568 if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
569 text += i.data;
570 else if (i.firstChild != null)
571 text += getText(i);
572 }
573 return text;
574 }
575
576 function TocEntry(el, text, toclevel) {
577 this.element = el;
578 this.text = text;
579 this.toclevel = toclevel;
580 }
581
582 function tocEntries(el, toclevels) {
583 var result = new Array;
Junio C Hamano61525f92014-01-17 22:46:49584 var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');
Junio C Hamano7bd050f2011-09-22 06:32:22585 // Function that scans the DOM tree for header elements (the DOM2
586 // nodeIterator API would be a better technique but not supported by all
587 // browsers).
588 var iterate = function (el) {
589 for (var i = el.firstChild; i != null; i = i.nextSibling) {
590 if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {
591 var mo = re.exec(i.tagName);
592 if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {
593 result[result.length] = new TocEntry(i, getText(i), mo[1]-1);
594 }
595 iterate(i);
596 }
597 }
598 }
599 iterate(el);
600 return result;
601 }
602
603 var toc = document.getElementById("toc");
Junio C Hamano9d971152012-12-19 00:43:11604 if (!toc) {
605 return;
606 }
607
608 // Delete existing TOC entries in case we're reloading the TOC.
609 var tocEntriesToRemove = [];
610 var i;
611 for (i = 0; i < toc.childNodes.length; i++) {
612 var entry = toc.childNodes[i];
Junio C Hamano61525f92014-01-17 22:46:49613 if (entry.nodeName == 'div'
Junio C Hamano9d971152012-12-19 00:43:11614 && entry.getAttribute("class")
615 && entry.getAttribute("class").match(/^toclevel/))
616 tocEntriesToRemove.push(entry);
617 }
618 for (i = 0; i < tocEntriesToRemove.length; i++) {
619 toc.removeChild(tocEntriesToRemove[i]);
620 }
621
622 // Rebuild TOC entries.
Junio C Hamano7bd050f2011-09-22 06:32:22623 var entries = tocEntries(document.getElementById("content"), toclevels);
624 for (var i = 0; i < entries.length; ++i) {
625 var entry = entries[i];
626 if (entry.element.id == "")
627 entry.element.id = "_toc_" + i;
628 var a = document.createElement("a");
629 a.href = "#" + entry.element.id;
630 a.appendChild(document.createTextNode(entry.text));
631 var div = document.createElement("div");
632 div.appendChild(a);
633 div.className = "toclevel" + entry.toclevel;
634 toc.appendChild(div);
635 }
636 if (entries.length == 0)
637 toc.parentNode.removeChild(toc);
638},
639
640
641/////////////////////////////////////////////////////////////////////
642// Footnotes generator
643/////////////////////////////////////////////////////////////////////
644
645/* Based on footnote generation code from:
646 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
647 */
648
649footnotes: function () {
Junio C Hamano9d971152012-12-19 00:43:11650 // Delete existing footnote entries in case we're reloading the footnodes.
651 var i;
Junio C Hamano7bd050f2011-09-22 06:32:22652 var noteholder = document.getElementById("footnotes");
Junio C Hamano9d971152012-12-19 00:43:11653 if (!noteholder) {
654 return;
655 }
656 var entriesToRemove = [];
657 for (i = 0; i < noteholder.childNodes.length; i++) {
658 var entry = noteholder.childNodes[i];
Junio C Hamano61525f92014-01-17 22:46:49659 if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")
Junio C Hamano9d971152012-12-19 00:43:11660 entriesToRemove.push(entry);
661 }
662 for (i = 0; i < entriesToRemove.length; i++) {
663 noteholder.removeChild(entriesToRemove[i]);
664 }
665
666 // Rebuild footnote entries.
667 var cont = document.getElementById("content");
Junio C Hamano7bd050f2011-09-22 06:32:22668 var spans = cont.getElementsByTagName("span");
669 var refs = {};
670 var n = 0;
671 for (i=0; i<spans.length; i++) {
672 if (spans[i].className == "footnote") {
673 n++;
Junio C Hamano9d971152012-12-19 00:43:11674 var note = spans[i].getAttribute("data-note");
675 if (!note) {
676 // Use [\s\S] in place of . so multi-line matches work.
677 // Because JavaScript has no s (dotall) regex flag.
678 note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
679 spans[i].innerHTML =
680 "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
681 "' title='View footnote' class='footnote'>" + n + "</a>]";
682 spans[i].setAttribute("data-note", note);
683 }
Junio C Hamano7bd050f2011-09-22 06:32:22684 noteholder.innerHTML +=
685 "<div class='footnote' id='_footnote_" + n + "'>" +
686 "<a href='#_footnoteref_" + n + "' title='Return to text'>" +
687 n + "</a>. " + note + "</div>";
Junio C Hamano7bd050f2011-09-22 06:32:22688 var id =spans[i].getAttribute("id");
689 if (id != null) refs["#"+id] = n;
690 }
691 }
692 if (n == 0)
693 noteholder.parentNode.removeChild(noteholder);
694 else {
695 // Process footnoterefs.
696 for (i=0; i<spans.length; i++) {
697 if (spans[i].className == "footnoteref") {
698 var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");
699 href = href.match(/#.*/)[0]; // Because IE return full URL.
700 n = refs[href];
701 spans[i].innerHTML =
702 "[<a href='#_footnote_" + n +
703 "' title='View footnote' class='footnote'>" + n + "</a>]";
704 }
705 }
706 }
Junio C Hamano9d971152012-12-19 00:43:11707},
708
709install: function(toclevels) {
710 var timerId;
711
712 function reinstall() {
713 asciidoc.footnotes();
714 if (toclevels) {
715 asciidoc.toc(toclevels);
716 }
717 }
718
719 function reinstallAndRemoveTimer() {
720 clearInterval(timerId);
721 reinstall();
722 }
723
724 timerId = setInterval(reinstall, 500);
725 if (document.addEventListener)
726 document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);
727 else
728 window.onload = reinstallAndRemoveTimer;
Junio C Hamano7bd050f2011-09-22 06:32:22729}
730
731}
Junio C Hamano9d971152012-12-19 00:43:11732asciidoc.install();
Junio C Hamano7bd050f2011-09-22 06:32:22733/*]]>*/
734</script>
Junio C Hamano52299462006-12-28 00:59:38735</head>
Junio C Hamano9d971152012-12-19 00:43:11736<body class="manpage">
Junio C Hamano52299462006-12-28 00:59:38737<div id="header">
738<h1>
739git-gc(1) Manual Page
740</h1>
741<h2>NAME</h2>
742<div class="sectionbody">
743<p>git-gc -
744 Cleanup unnecessary files and optimize the local repository
745</p>
746</div>
747</div>
Junio C Hamano7bd050f2011-09-22 06:32:22748<div id="content">
Junio C Hamano9d971152012-12-19 00:43:11749<div class="sect1">
Junio C Hamano97bcb482010-11-25 03:16:07750<h2 id="_synopsis">SYNOPSIS</h2>
Junio C Hamano52299462006-12-28 00:59:38751<div class="sectionbody">
Junio C Hamano15567bc2011-07-23 00:51:59752<div class="verseblock">
Junio C Hamano535ed7a2013-09-04 20:35:57753<pre class="content"><em>git gc</em> [--aggressive] [--auto] [--quiet] [--prune=&lt;date&gt; | --no-prune] [--force]</pre>
Junio C Hamano9d971152012-12-19 00:43:11754<div class="attribution">
Junio C Hamano15567bc2011-07-23 00:51:59755</div></div>
Junio C Hamano52299462006-12-28 00:59:38756</div>
Junio C Hamano9d971152012-12-19 00:43:11757</div>
758<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31759<h2 id="_description">DESCRIPTION</h2>
Junio C Hamano52299462006-12-28 00:59:38760<div class="sectionbody">
Junio C Hamano97bcb482010-11-25 03:16:07761<div class="paragraph"><p>Runs a number of housekeeping tasks within the current repository,
Junio C Hamano52299462006-12-28 00:59:38762such as compressing file revisions (to reduce disk space and increase
763performance) and removing unreachable objects which may have been
Junio C Hamano1aa40d22010-01-21 17:46:43764created from prior invocations of <em>git add</em>.</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07765<div class="paragraph"><p>Users are encouraged to run this task on a regular basis within
Junio C Hamano52299462006-12-28 00:59:38766each repository to maintain good disk space utilization and good
Junio C Hamanoba4b9282008-07-06 05:20:31767operating performance.</p></div>
Junio C Hamano61525f92014-01-17 22:46:49768<div class="paragraph"><p>Some git commands may automatically run <em>git gc</em>; see the <tt>--auto</tt> flag
Junio C Hamano97bcb482010-11-25 03:16:07769below for details. If you know what you&#8217;re doing and all you want is to
Junio C Hamanoba4b9282008-07-06 05:20:31770disable this behavior permanently without further considerations, just do:</p></div>
Junio C Hamanod04b60c2008-03-20 08:46:04771<div class="listingblock">
772<div class="content">
Junio C Hamano61525f92014-01-17 22:46:49773<pre><tt>$ git config --global gc.auto 0</tt></pre>
Junio C Hamanod04b60c2008-03-20 08:46:04774</div></div>
Junio C Hamano52299462006-12-28 00:59:38775</div>
Junio C Hamano9d971152012-12-19 00:43:11776</div>
777<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31778<h2 id="_options">OPTIONS</h2>
Junio C Hamanof65d9282007-01-22 09:00:13779<div class="sectionbody">
Junio C Hamano97bcb482010-11-25 03:16:07780<div class="dlist"><dl>
781<dt class="hdlist1">
Junio C Hamanof2ce2972007-05-20 19:12:09782--aggressive
783</dt>
784<dd>
785<p>
Junio C Hamano1aa40d22010-01-21 17:46:43786 Usually <em>git gc</em> runs very quickly while providing good disk
Junio C Hamano679d22d2007-06-02 21:13:44787 space utilization and performance. This option will cause
Junio C Hamano1aa40d22010-01-21 17:46:43788 <em>git gc</em> to more aggressively optimize the repository at the expense
Junio C Hamanof2ce2972007-05-20 19:12:09789 of taking much more time. The effects of this optimization are
Junio C Hamano679d22d2007-06-02 21:13:44790 persistent, so this option only needs to be used occasionally; every
Junio C Hamanof2ce2972007-05-20 19:12:09791 few hundred changesets or so.
792</p>
793</dd>
Junio C Hamano97bcb482010-11-25 03:16:07794<dt class="hdlist1">
Junio C Hamano1b50ce92007-10-03 12:05:53795--auto
796</dt>
797<dd>
798<p>
Junio C Hamano1aa40d22010-01-21 17:46:43799 With this option, <em>git gc</em> checks whether any housekeeping is
Junio C Hamano764a6672007-10-23 01:23:31800 required; if not, it exits without performing any work.
Junio C Hamano61525f92014-01-17 22:46:49801 Some git commands run <tt>git gc --auto</tt> after performing
Junio C Hamano764a6672007-10-23 01:23:31802 operations that could create many loose objects.
Junio C Hamano1b50ce92007-10-03 12:05:53803</p>
Junio C Hamano97bcb482010-11-25 03:16:07804<div class="paragraph"><p>Housekeeping is required if there are too many loose objects or
Junio C Hamano764a6672007-10-23 01:23:31805too many packs in the repository. If the number of loose objects
Junio C Hamano61525f92014-01-17 22:46:49806exceeds the value of the <tt>gc.auto</tt> configuration variable, then
Junio C Hamano764a6672007-10-23 01:23:31807all loose objects are combined into a single pack using
Junio C Hamano61525f92014-01-17 22:46:49808<tt>git repack -d -l</tt>. Setting the value of <tt>gc.auto</tt> to 0
Junio C Hamanoba4b9282008-07-06 05:20:31809disables automatic packing of loose objects.</p></div>
Junio C Hamano61525f92014-01-17 22:46:49810<div class="paragraph"><p>If the number of packs exceeds the value of <tt>gc.autopacklimit</tt>,
811then existing packs (except those marked with a <tt>.keep</tt> file)
812are consolidated into a single pack by using the <tt>-A</tt> option of
813<em>git repack</em>. Setting <tt>gc.autopacklimit</tt> to 0 disables
Junio C Hamanoba4b9282008-07-06 05:20:31814automatic consolidation of packs.</p></div>
Junio C Hamano1b50ce92007-10-03 12:05:53815</dd>
Junio C Hamano97bcb482010-11-25 03:16:07816<dt class="hdlist1">
Junio C Hamano8bc410e2009-02-15 10:38:19817--prune=&lt;date&gt;
818</dt>
819<dd>
820<p>
821 Prune loose objects older than date (default is 2 weeks ago,
Junio C Hamano61525f92014-01-17 22:46:49822 overridable by the config variable <tt>gc.pruneExpire</tt>).
Junio C Hamanoc7102962013-05-29 23:57:17823 --prune=all prunes loose objects regardless of their age.
824 --prune is on by default.
Junio C Hamano8bc410e2009-02-15 10:38:19825</p>
826</dd>
Junio C Hamano97bcb482010-11-25 03:16:07827<dt class="hdlist1">
Junio C Hamano8bc410e2009-02-15 10:38:19828--no-prune
829</dt>
830<dd>
831<p>
832 Do not prune any loose objects.
833</p>
834</dd>
Junio C Hamano97bcb482010-11-25 03:16:07835<dt class="hdlist1">
Junio C Hamano69a98582008-03-01 18:42:18836--quiet
837</dt>
838<dd>
839<p>
840 Suppress all progress reports.
841</p>
842</dd>
Junio C Hamano535ed7a2013-09-04 20:35:57843<dt class="hdlist1">
844--force
845</dt>
846<dd>
847<p>
Junio C Hamano61525f92014-01-17 22:46:49848 Force <tt>git gc</tt> to run even if there may be another <tt>git gc</tt>
Junio C Hamano535ed7a2013-09-04 20:35:57849 instance running on this repository.
850</p>
851</dd>
Junio C Hamanoba4b9282008-07-06 05:20:31852</dl></div>
Junio C Hamanof65d9282007-01-22 09:00:13853</div>
Junio C Hamano9d971152012-12-19 00:43:11854</div>
855<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31856<h2 id="_configuration">Configuration</h2>
Junio C Hamano52299462006-12-28 00:59:38857<div class="sectionbody">
Junio C Hamano97bcb482010-11-25 03:16:07858<div class="paragraph"><p>The optional configuration variable <em>gc.reflogExpire</em> can be
859set to indicate how long historical entries within each branch&#8217;s
Junio C Hamano52299462006-12-28 00:59:38860reflog should remain available in this repository. The setting is
861expressed as a length of time, for example <em>90 days</em> or <em>3 months</em>.
Junio C Hamanoba4b9282008-07-06 05:20:31862It defaults to <em>90 days</em>.</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07863<div class="paragraph"><p>The optional configuration variable <em>gc.reflogExpireUnreachable</em>
Junio C Hamano52299462006-12-28 00:59:38864can be set to indicate how long historical reflog entries which
865are not part of the current branch should remain available in
866this repository. These types of entries are generally created as
Junio C Hamano61525f92014-01-17 22:46:49867a result of using <tt>git commit --amend</tt> or <tt>git rebase</tt> and are the
Junio C Hamanof9771f62007-01-17 17:42:30868commits prior to the amend or rebase occurring. Since these changes
Junio C Hamano52299462006-12-28 00:59:38869are not part of the current project most users will want to expire
Junio C Hamanoba4b9282008-07-06 05:20:31870them sooner. This option defaults to <em>30 days</em>.</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07871<div class="paragraph"><p>The above two configuration variables can be given to a pattern. For
872example, this sets non-default expiry values only to remote-tracking
Junio C Hamanocc7636a2010-05-21 14:57:53873branches:</p></div>
874<div class="listingblock">
875<div class="content">
Junio C Hamano61525f92014-01-17 22:46:49876<pre><tt>[gc "refs/remotes/*"]
Junio C Hamanocc7636a2010-05-21 14:57:53877 reflogExpire = never
Junio C Hamano61525f92014-01-17 22:46:49878 reflogexpireUnreachable = 3 days</tt></pre>
Junio C Hamanocc7636a2010-05-21 14:57:53879</div></div>
Junio C Hamano97bcb482010-11-25 03:16:07880<div class="paragraph"><p>The optional configuration variable <em>gc.rerereresolved</em> indicates
Junio C Hamano52299462006-12-28 00:59:38881how long records of conflicted merge you resolved earlier are
Junio C Hamanoba4b9282008-07-06 05:20:31882kept. This defaults to 60 days.</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07883<div class="paragraph"><p>The optional configuration variable <em>gc.rerereunresolved</em> indicates
Junio C Hamano52299462006-12-28 00:59:38884how long records of conflicted merge you have not resolved are
Junio C Hamanoba4b9282008-07-06 05:20:31885kept. This defaults to 15 days.</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07886<div class="paragraph"><p>The optional configuration variable <em>gc.packrefs</em> determines if
Junio C Hamanocdd1c332010-12-20 10:08:00887<em>git gc</em> runs <em>git pack-refs</em>. This can be set to "notbare" to enable
Junio C Hamanoe77b0152008-01-12 06:44:17888it within all non-bare repos or it can be set to a boolean value.
Junio C Hamanoba4b9282008-07-06 05:20:31889This defaults to true.</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07890<div class="paragraph"><p>The optional configuration variable <em>gc.aggressiveWindow</em> controls how
Junio C Hamanof2ce2972007-05-20 19:12:09891much time is spent optimizing the delta compression of the objects in
892the repository when the --aggressive option is specified. The larger
893the value, the more time is spent optimizing the delta compression. See
Junio C Hamanoa28a9202012-06-21 07:08:23894the documentation for the --window' option in <a href="git-repack.html">git-repack(1)</a> for
Junio C Hamanoae4a8f32009-10-04 09:54:54895more details. This defaults to 250.</p></div>
Junio C Hamano624dd4c2014-04-03 21:56:30896<div class="paragraph"><p>Similarly, the optional configuration variable <em>gc.aggressiveDepth</em>
897controls --depth option in <a href="git-repack.html">git-repack(1)</a>. This defaults to 250.</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07898<div class="paragraph"><p>The optional configuration variable <em>gc.pruneExpire</em> controls how old
Junio C Hamano09a926d2008-03-13 07:55:29899the unreferenced loose objects have to be before they are pruned. The
Junio C Hamanoba4b9282008-07-06 05:20:31900default is "2 weeks ago".</p></div>
Junio C Hamano52299462006-12-28 00:59:38901</div>
Junio C Hamano9d971152012-12-19 00:43:11902</div>
903<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31904<h2 id="_notes">Notes</h2>
Junio C Hamano2f102bb2008-04-26 02:23:37905<div class="sectionbody">
Junio C Hamano97bcb482010-11-25 03:16:07906<div class="paragraph"><p><em>git gc</em> tries very hard to be safe about the garbage it collects. In
Junio C Hamano2f102bb2008-04-26 02:23:37907particular, it will keep not only objects referenced by your current set
Junio C Hamano97bcb482010-11-25 03:16:07908of branches and tags, but also objects referenced by the index,
909remote-tracking branches, refs saved by <em>git filter-branch</em> in
Junio C Hamano4232bc42009-10-20 07:49:31910refs/original/, or reflogs (which may reference commits in branches
Junio C Hamanoba4b9282008-07-06 05:20:31911that were later amended or rewound).</p></div>
Junio C Hamano97bcb482010-11-25 03:16:07912<div class="paragraph"><p>If you are expecting some objects to be collected and they aren&#8217;t, check
Junio C Hamano2f102bb2008-04-26 02:23:37913all of those locations and decide whether it makes sense in your case to
Junio C Hamanoba4b9282008-07-06 05:20:31914remove those references.</p></div>
Junio C Hamano2f102bb2008-04-26 02:23:37915</div>
Junio C Hamano9d971152012-12-19 00:43:11916</div>
917<div class="sect1">
Junio C Hamano3e3aa812010-07-05 23:25:23918<h2 id="_hooks">HOOKS</h2>
919<div class="sectionbody">
Junio C Hamano97bcb482010-11-25 03:16:07920<div class="paragraph"><p>The <em>git gc --auto</em> command will run the <em>pre-auto-gc</em> hook. See
Junio C Hamanoa28a9202012-06-21 07:08:23921<a href="githooks.html">githooks(5)</a> for more information.</p></div>
Junio C Hamano3e3aa812010-07-05 23:25:23922</div>
Junio C Hamano9d971152012-12-19 00:43:11923</div>
924<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31925<h2 id="_see_also">SEE ALSO</h2>
Junio C Hamano52299462006-12-28 00:59:38926<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:23927<div class="paragraph"><p><a href="git-prune.html">git-prune(1)</a>
928<a href="git-reflog.html">git-reflog(1)</a>
929<a href="git-repack.html">git-repack(1)</a>
930<a href="git-rerere.html">git-rerere(1)</a></p></div>
Junio C Hamano52299462006-12-28 00:59:38931</div>
Junio C Hamano9d971152012-12-19 00:43:11932</div>
933<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31934<h2 id="_git">GIT</h2>
Junio C Hamano52299462006-12-28 00:59:38935<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:23936<div class="paragraph"><p>Part of the <a href="git.html">git(1)</a> suite</p></div>
Junio C Hamano52299462006-12-28 00:59:38937</div>
Junio C Hamano7bd050f2011-09-22 06:32:22938</div>
Junio C Hamano9d971152012-12-19 00:43:11939</div>
Junio C Hamano7bd050f2011-09-22 06:32:22940<div id="footnotes"><hr /></div>
Junio C Hamano52299462006-12-28 00:59:38941<div id="footer">
942<div id="footer-text">
Junio C Hamano624dd4c2014-04-03 21:56:30943Last updated 2014-04-03 14:56:03 PDT
Junio C Hamano52299462006-12-28 00:59:38944</div>
945</div>
946</body>
947</html>