blob: 5f0b4b79f252cdd301cd011e1409b7c10310059e [file] [log] [blame]
Junio C Hamanoccb82522018-05-08 07:52:091<?xml version="1.0" encoding="UTF-8"?>
Junio C Hamano1a4e8412005-12-27 08:17:232<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
3 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
5<head>
Junio C Hamano9d971152012-12-19 00:43:116<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
Junio C Hamanoccb82522018-05-08 07:52:097<meta name="generator" content="AsciiDoc 8.6.10" />
Junio C Hamano68cf15a2010-11-06 01:01:598<title>git(1)</title>
Junio C Hamano1a4e8412005-12-27 08:17:239<style type="text/css">
Junio C Hamano9d971152012-12-19 00:43:1110/* Shared CSS for AsciiDoc xhtml11 and html5 backends */
11
12/* Default font. */
13body {
14 font-family: Georgia,serif;
15}
16
17/* Title font. */
18h1, h2, h3, h4, h5, h6,
19div.title, caption.title,
20thead, p.table.header,
21#toctitle,
22#author, #revnumber, #revdate, #revremark,
23#footer {
24 font-family: Arial,Helvetica,sans-serif;
Junio C Hamano1a4e8412005-12-27 08:17:2325}
26
27body {
28 margin: 1em 5% 1em 5%;
29}
30
Junio C Hamanoba4b9282008-07-06 05:20:3131a {
32 color: blue;
33 text-decoration: underline;
34}
35a:visited {
36 color: fuchsia;
37}
Junio C Hamano1a4e8412005-12-27 08:17:2338
39em {
40 font-style: italic;
Junio C Hamano68cf15a2010-11-06 01:01:5941 color: navy;
Junio C Hamano1a4e8412005-12-27 08:17:2342}
43
44strong {
45 font-weight: bold;
Junio C Hamano68cf15a2010-11-06 01:01:5946 color: #083194;
Junio C Hamano1a4e8412005-12-27 08:17:2347}
48
Junio C Hamano1a4e8412005-12-27 08:17:2349h1, h2, h3, h4, h5, h6 {
50 color: #527bbd;
Junio C Hamano1a4e8412005-12-27 08:17:2351 margin-top: 1.2em;
52 margin-bottom: 0.5em;
53 line-height: 1.3;
54}
55
Junio C Hamanoba4b9282008-07-06 05:20:3156h1, h2, h3 {
Junio C Hamano1a4e8412005-12-27 08:17:2357 border-bottom: 2px solid silver;
58}
59h2 {
Junio C Hamano1a4e8412005-12-27 08:17:2360 padding-top: 0.5em;
61}
Junio C Hamanoba4b9282008-07-06 05:20:3162h3 {
63 float: left;
64}
65h3 + * {
66 clear: left;
67}
Junio C Hamano9d971152012-12-19 00:43:1168h5 {
69 font-size: 1.0em;
70}
Junio C Hamano1a4e8412005-12-27 08:17:2371
72div.sectionbody {
Junio C Hamano1a4e8412005-12-27 08:17:2373 margin-left: 0;
74}
75
76hr {
77 border: 1px solid silver;
78}
79
80p {
81 margin-top: 0.5em;
82 margin-bottom: 0.5em;
83}
84
Junio C Hamano68cf15a2010-11-06 01:01:5985ul, ol, li > p {
86 margin-top: 0;
87}
Junio C Hamano9d971152012-12-19 00:43:1188ul > li { color: #aaa; }
89ul > li > * { color: black; }
Junio C Hamano68cf15a2010-11-06 01:01:5990
Junio C Hamanoac12f0e2014-09-19 22:32:5191.monospaced, code, pre {
92 font-family: "Courier New", Courier, monospace;
93 font-size: inherit;
94 color: navy;
Junio C Hamano1a4e8412005-12-27 08:17:2395 padding: 0;
96 margin: 0;
97}
Junio C Hamanoac12f0e2014-09-19 22:32:5198pre {
99 white-space: pre-wrap;
100}
Junio C Hamano1a4e8412005-12-27 08:17:23101
Junio C Hamano9d971152012-12-19 00:43:11102#author {
Junio C Hamano1a4e8412005-12-27 08:17:23103 color: #527bbd;
Junio C Hamano1a4e8412005-12-27 08:17:23104 font-weight: bold;
Junio C Hamanoba4b9282008-07-06 05:20:31105 font-size: 1.1em;
Junio C Hamano1a4e8412005-12-27 08:17:23106}
Junio C Hamano9d971152012-12-19 00:43:11107#email {
Junio C Hamano1a4e8412005-12-27 08:17:23108}
Junio C Hamano9d971152012-12-19 00:43:11109#revnumber, #revdate, #revremark {
Junio C Hamano1a4e8412005-12-27 08:17:23110}
111
Junio C Hamano9d971152012-12-19 00:43:11112#footer {
Junio C Hamano1a4e8412005-12-27 08:17:23113 font-size: small;
114 border-top: 2px solid silver;
115 padding-top: 0.5em;
116 margin-top: 4.0em;
117}
Junio C Hamano9d971152012-12-19 00:43:11118#footer-text {
Junio C Hamano1a4e8412005-12-27 08:17:23119 float: left;
120 padding-bottom: 0.5em;
121}
Junio C Hamano9d971152012-12-19 00:43:11122#footer-badges {
Junio C Hamano1a4e8412005-12-27 08:17:23123 float: right;
124 padding-bottom: 0.5em;
125}
126
Junio C Hamano9d971152012-12-19 00:43:11127#preamble {
Junio C Hamano68cf15a2010-11-06 01:01:59128 margin-top: 1.5em;
129 margin-bottom: 1.5em;
130}
Junio C Hamano9d971152012-12-19 00:43:11131div.imageblock, div.exampleblock, div.verseblock,
Junio C Hamano1a4e8412005-12-27 08:17:23132div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
133div.admonitionblock {
Junio C Hamano7bd050f2011-09-22 06:32:22134 margin-top: 1.0em;
Junio C Hamano1a4e8412005-12-27 08:17:23135 margin-bottom: 1.5em;
136}
137div.admonitionblock {
Junio C Hamano7bd050f2011-09-22 06:32:22138 margin-top: 2.0em;
139 margin-bottom: 2.0em;
140 margin-right: 10%;
141 color: #606060;
Junio C Hamano1a4e8412005-12-27 08:17:23142}
143
144div.content { /* Block element content. */
145 padding: 0;
146}
147
148/* Block element titles. */
149div.title, caption.title {
Junio C Hamano68cf15a2010-11-06 01:01:59150 color: #527bbd;
Junio C Hamano1a4e8412005-12-27 08:17:23151 font-weight: bold;
152 text-align: left;
153 margin-top: 1.0em;
154 margin-bottom: 0.5em;
155}
156div.title + * {
157 margin-top: 0;
158}
159
160td div.title:first-child {
161 margin-top: 0.0em;
162}
163div.content div.title:first-child {
164 margin-top: 0.0em;
165}
166div.content + div.title {
167 margin-top: 0.0em;
168}
169
170div.sidebarblock > div.content {
171 background: #ffffee;
Junio C Hamano9d971152012-12-19 00:43:11172 border: 1px solid #dddddd;
173 border-left: 4px solid #f0f0f0;
Junio C Hamano1a4e8412005-12-27 08:17:23174 padding: 0.5em;
175}
176
177div.listingblock > div.content {
Junio C Hamano9d971152012-12-19 00:43:11178 border: 1px solid #dddddd;
179 border-left: 5px solid #f0f0f0;
180 background: #f8f8f8;
Junio C Hamano1a4e8412005-12-27 08:17:23181 padding: 0.5em;
182}
183
Junio C Hamano7bd050f2011-09-22 06:32:22184div.quoteblock, div.verseblock {
185 padding-left: 1.0em;
186 margin-left: 1.0em;
Junio C Hamano68cf15a2010-11-06 01:01:59187 margin-right: 10%;
Junio C Hamano9d971152012-12-19 00:43:11188 border-left: 5px solid #f0f0f0;
189 color: #888;
Junio C Hamano1a4e8412005-12-27 08:17:23190}
Junio C Hamano7bd050f2011-09-22 06:32:22191
Junio C Hamano68cf15a2010-11-06 01:01:59192div.quoteblock > div.attribution {
193 padding-top: 0.5em;
Junio C Hamano1a4e8412005-12-27 08:17:23194 text-align: right;
195}
Junio C Hamano68cf15a2010-11-06 01:01:59196
Junio C Hamano9d971152012-12-19 00:43:11197div.verseblock > pre.content {
198 font-family: inherit;
199 font-size: inherit;
Junio C Hamano68cf15a2010-11-06 01:01:59200}
201div.verseblock > div.attribution {
202 padding-top: 0.75em;
203 text-align: left;
204}
205/* DEPRECATED: Pre version 8.2.7 verse style literal block. */
Junio C Hamanoba4b9282008-07-06 05:20:31206div.verseblock + div.attribution {
207 text-align: left;
208}
Junio C Hamano1a4e8412005-12-27 08:17:23209
210div.admonitionblock .icon {
211 vertical-align: top;
212 font-size: 1.1em;
213 font-weight: bold;
214 text-decoration: underline;
215 color: #527bbd;
216 padding-right: 0.5em;
217}
218div.admonitionblock td.content {
219 padding-left: 0.5em;
Junio C Hamano7bd050f2011-09-22 06:32:22220 border-left: 3px solid #dddddd;
Junio C Hamano1a4e8412005-12-27 08:17:23221}
222
223div.exampleblock > div.content {
Junio C Hamano7bd050f2011-09-22 06:32:22224 border-left: 3px solid #dddddd;
225 padding-left: 0.5em;
Junio C Hamano1a4e8412005-12-27 08:17:23226}
227
Junio C Hamano1a4e8412005-12-27 08:17:23228div.imageblock div.content { padding-left: 0; }
Junio C Hamanoac12f0e2014-09-19 22:32:51229span.image img { border-style: none; vertical-align: text-bottom; }
Junio C Hamano68cf15a2010-11-06 01:01:59230a.image:visited { color: white; }
Junio C Hamano1a4e8412005-12-27 08:17:23231
232dl {
233 margin-top: 0.8em;
234 margin-bottom: 0.8em;
235}
236dt {
237 margin-top: 0.5em;
238 margin-bottom: 0;
Junio C Hamano68cf15a2010-11-06 01:01:59239 font-style: normal;
240 color: navy;
Junio C Hamano1a4e8412005-12-27 08:17:23241}
242dd > *:first-child {
Junio C Hamano68cf15a2010-11-06 01:01:59243 margin-top: 0.1em;
Junio C Hamano1a4e8412005-12-27 08:17:23244}
245
246ul, ol {
247 list-style-position: outside;
248}
Junio C Hamano68cf15a2010-11-06 01:01:59249ol.arabic {
250 list-style-type: decimal;
251}
252ol.loweralpha {
Junio C Hamano1a4e8412005-12-27 08:17:23253 list-style-type: lower-alpha;
254}
Junio C Hamano68cf15a2010-11-06 01:01:59255ol.upperalpha {
256 list-style-type: upper-alpha;
257}
258ol.lowerroman {
259 list-style-type: lower-roman;
260}
261ol.upperroman {
262 list-style-type: upper-roman;
263}
264
265div.compact ul, div.compact ol,
266div.compact p, div.compact p,
267div.compact div, div.compact div {
268 margin-top: 0.1em;
269 margin-bottom: 0.1em;
270}
Junio C Hamano1a4e8412005-12-27 08:17:23271
Junio C Hamano1a4e8412005-12-27 08:17:23272tfoot {
273 font-weight: bold;
274}
Junio C Hamano68cf15a2010-11-06 01:01:59275td > div.verse {
276 white-space: pre;
277}
Junio C Hamano68cf15a2010-11-06 01:01:59278
279div.hdlist {
Junio C Hamano1a4e8412005-12-27 08:17:23280 margin-top: 0.8em;
281 margin-bottom: 0.8em;
282}
Junio C Hamano68cf15a2010-11-06 01:01:59283div.hdlist tr {
284 padding-bottom: 15px;
Junio C Hamanoba4b9282008-07-06 05:20:31285}
Junio C Hamano68cf15a2010-11-06 01:01:59286dt.hdlist1.strong, td.hdlist1.strong {
287 font-weight: bold;
288}
289td.hdlist1 {
Junio C Hamano1a4e8412005-12-27 08:17:23290 vertical-align: top;
Junio C Hamano68cf15a2010-11-06 01:01:59291 font-style: normal;
Junio C Hamano1a4e8412005-12-27 08:17:23292 padding-right: 0.8em;
Junio C Hamano68cf15a2010-11-06 01:01:59293 color: navy;
Junio C Hamano1a4e8412005-12-27 08:17:23294}
Junio C Hamano68cf15a2010-11-06 01:01:59295td.hdlist2 {
Junio C Hamano1a4e8412005-12-27 08:17:23296 vertical-align: top;
297}
Junio C Hamano68cf15a2010-11-06 01:01:59298div.hdlist.compact tr {
299 margin: 0;
300 padding-bottom: 0;
301}
302
303.comment {
304 background: yellow;
305}
Junio C Hamano1a4e8412005-12-27 08:17:23306
Junio C Hamano7bd050f2011-09-22 06:32:22307.footnote, .footnoteref {
308 font-size: 0.8em;
309}
310
311span.footnote, span.footnoteref {
312 vertical-align: super;
313}
314
315#footnotes {
316 margin: 20px 0 20px 0;
317 padding: 7px 0 0 0;
318}
319
320#footnotes div.footnote {
321 margin: 0 0 5px 0;
322}
323
324#footnotes hr {
325 border: none;
326 border-top: 1px solid silver;
327 height: 1px;
328 text-align: left;
329 margin-left: 0;
330 width: 20%;
331 min-width: 100px;
332}
333
Junio C Hamano9d971152012-12-19 00:43:11334div.colist td {
335 padding-right: 0.5em;
336 padding-bottom: 0.3em;
337 vertical-align: top;
338}
339div.colist td img {
340 margin-top: 0.3em;
Junio C Hamano1a4e8412005-12-27 08:17:23341}
Junio C Hamanoba4b9282008-07-06 05:20:31342
Junio C Hamano9d971152012-12-19 00:43:11343@media print {
344 #footer-badges { display: none; }
345}
346
347#toc {
Junio C Hamano7bd050f2011-09-22 06:32:22348 margin-bottom: 2.5em;
349}
350
Junio C Hamano9d971152012-12-19 00:43:11351#toctitle {
Junio C Hamanoba4b9282008-07-06 05:20:31352 color: #527bbd;
Junio C Hamanoba4b9282008-07-06 05:20:31353 font-size: 1.1em;
354 font-weight: bold;
355 margin-top: 1.0em;
356 margin-bottom: 0.1em;
357}
358
Junio C Hamanoac12f0e2014-09-19 22:32:51359div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
Junio C Hamanoba4b9282008-07-06 05:20:31360 margin-top: 0;
361 margin-bottom: 0;
362}
363div.toclevel2 {
364 margin-left: 2em;
365 font-size: 0.9em;
366}
367div.toclevel3 {
368 margin-left: 4em;
369 font-size: 0.9em;
370}
371div.toclevel4 {
372 margin-left: 6em;
373 font-size: 0.9em;
374}
Junio C Hamano9d971152012-12-19 00:43:11375
376span.aqua { color: aqua; }
377span.black { color: black; }
378span.blue { color: blue; }
379span.fuchsia { color: fuchsia; }
380span.gray { color: gray; }
381span.green { color: green; }
382span.lime { color: lime; }
383span.maroon { color: maroon; }
384span.navy { color: navy; }
385span.olive { color: olive; }
386span.purple { color: purple; }
387span.red { color: red; }
388span.silver { color: silver; }
389span.teal { color: teal; }
390span.white { color: white; }
391span.yellow { color: yellow; }
392
393span.aqua-background { background: aqua; }
394span.black-background { background: black; }
395span.blue-background { background: blue; }
396span.fuchsia-background { background: fuchsia; }
397span.gray-background { background: gray; }
398span.green-background { background: green; }
399span.lime-background { background: lime; }
400span.maroon-background { background: maroon; }
401span.navy-background { background: navy; }
402span.olive-background { background: olive; }
403span.purple-background { background: purple; }
404span.red-background { background: red; }
405span.silver-background { background: silver; }
406span.teal-background { background: teal; }
407span.white-background { background: white; }
408span.yellow-background { background: yellow; }
409
410span.big { font-size: 2em; }
411span.small { font-size: 0.6em; }
412
413span.underline { text-decoration: underline; }
414span.overline { text-decoration: overline; }
415span.line-through { text-decoration: line-through; }
416
Junio C Hamanoac12f0e2014-09-19 22:32:51417div.unbreakable { page-break-inside: avoid; }
418
Junio C Hamano9d971152012-12-19 00:43:11419
420/*
421 * xhtml11 specific
422 *
423 * */
424
425div.tableblock {
426 margin-top: 1.0em;
427 margin-bottom: 1.5em;
428}
429div.tableblock > table {
430 border: 3px solid #527bbd;
431}
432thead, p.table.header {
433 font-weight: bold;
434 color: #527bbd;
435}
436p.table {
437 margin-top: 0;
438}
Junio C Hamano725b0da2020-01-22 22:02:40439/* Because the table frame attribute is overridden by CSS in most browsers. */
Junio C Hamano9d971152012-12-19 00:43:11440div.tableblock > table[frame="void"] {
441 border-style: none;
442}
443div.tableblock > table[frame="hsides"] {
444 border-left-style: none;
445 border-right-style: none;
446}
447div.tableblock > table[frame="vsides"] {
448 border-top-style: none;
449 border-bottom-style: none;
450}
451
452
453/*
454 * html5 specific
455 *
456 * */
457
458table.tableblock {
459 margin-top: 1.0em;
460 margin-bottom: 1.5em;
461}
462thead, p.tableblock.header {
463 font-weight: bold;
464 color: #527bbd;
465}
466p.tableblock {
467 margin-top: 0;
468}
469table.tableblock {
470 border-width: 3px;
471 border-spacing: 0px;
472 border-style: solid;
473 border-color: #527bbd;
474 border-collapse: collapse;
475}
476th.tableblock, td.tableblock {
477 border-width: 1px;
478 padding: 4px;
479 border-style: solid;
480 border-color: #527bbd;
481}
482
483table.tableblock.frame-topbot {
484 border-left-style: hidden;
485 border-right-style: hidden;
486}
487table.tableblock.frame-sides {
488 border-top-style: hidden;
489 border-bottom-style: hidden;
490}
491table.tableblock.frame-none {
492 border-style: hidden;
493}
494
495th.tableblock.halign-left, td.tableblock.halign-left {
496 text-align: left;
497}
498th.tableblock.halign-center, td.tableblock.halign-center {
499 text-align: center;
500}
501th.tableblock.halign-right, td.tableblock.halign-right {
502 text-align: right;
503}
504
505th.tableblock.valign-top, td.tableblock.valign-top {
506 vertical-align: top;
507}
508th.tableblock.valign-middle, td.tableblock.valign-middle {
509 vertical-align: middle;
510}
511th.tableblock.valign-bottom, td.tableblock.valign-bottom {
512 vertical-align: bottom;
513}
514
515
516/*
517 * manpage specific
518 *
519 * */
520
521body.manpage h1 {
Junio C Hamano68cf15a2010-11-06 01:01:59522 padding-top: 0.5em;
523 padding-bottom: 0.5em;
524 border-top: 2px solid silver;
525 border-bottom: 2px solid silver;
526}
Junio C Hamano9d971152012-12-19 00:43:11527body.manpage h2 {
Junio C Hamano68cf15a2010-11-06 01:01:59528 border-style: none;
529}
Junio C Hamano9d971152012-12-19 00:43:11530body.manpage div.sectionbody {
531 margin-left: 3em;
Junio C Hamano68cf15a2010-11-06 01:01:59532}
533
534@media print {
Junio C Hamano9d971152012-12-19 00:43:11535 body.manpage div#toc { display: none; }
Junio C Hamano68cf15a2010-11-06 01:01:59536}
Junio C Hamanoac12f0e2014-09-19 22:32:51537
538
Junio C Hamano1a4e8412005-12-27 08:17:23539</style>
Junio C Hamano7bd050f2011-09-22 06:32:22540<script type="text/javascript">
541/*<![CDATA[*/
Junio C Hamano7bd050f2011-09-22 06:32:22542var asciidoc = { // Namespace.
543
544/////////////////////////////////////////////////////////////////////
545// Table Of Contents generator
546/////////////////////////////////////////////////////////////////////
547
548/* Author: Mihai Bazon, September 2002
549 * http://students.infoiasi.ro/~mishoo
550 *
551 * Table Of Content generator
552 * Version: 0.4
553 *
554 * Feel free to use this script under the terms of the GNU General Public
555 * License, as long as you do not remove or alter this notice.
556 */
557
558 /* modified by Troy D. Hanson, September 2006. License: GPL */
559 /* modified by Stuart Rackham, 2006, 2009. License: GPL */
560
561// toclevels = 1..4.
562toc: function (toclevels) {
563
564 function getText(el) {
565 var text = "";
566 for (var i = el.firstChild; i != null; i = i.nextSibling) {
567 if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
568 text += i.data;
569 else if (i.firstChild != null)
570 text += getText(i);
571 }
572 return text;
573 }
574
575 function TocEntry(el, text, toclevel) {
576 this.element = el;
577 this.text = text;
578 this.toclevel = toclevel;
579 }
580
581 function tocEntries(el, toclevels) {
582 var result = new Array;
Junio C Hamanoac12f0e2014-09-19 22:32:51583 var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');
Junio C Hamano7bd050f2011-09-22 06:32:22584 // Function that scans the DOM tree for header elements (the DOM2
585 // nodeIterator API would be a better technique but not supported by all
586 // browsers).
587 var iterate = function (el) {
588 for (var i = el.firstChild; i != null; i = i.nextSibling) {
589 if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {
590 var mo = re.exec(i.tagName);
591 if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {
592 result[result.length] = new TocEntry(i, getText(i), mo[1]-1);
593 }
594 iterate(i);
595 }
596 }
597 }
598 iterate(el);
599 return result;
600 }
601
602 var toc = document.getElementById("toc");
Junio C Hamano9d971152012-12-19 00:43:11603 if (!toc) {
604 return;
605 }
606
607 // Delete existing TOC entries in case we're reloading the TOC.
608 var tocEntriesToRemove = [];
609 var i;
610 for (i = 0; i < toc.childNodes.length; i++) {
611 var entry = toc.childNodes[i];
Junio C Hamanoac12f0e2014-09-19 22:32:51612 if (entry.nodeName.toLowerCase() == 'div'
Junio C Hamano9d971152012-12-19 00:43:11613 && entry.getAttribute("class")
614 && entry.getAttribute("class").match(/^toclevel/))
615 tocEntriesToRemove.push(entry);
616 }
617 for (i = 0; i < tocEntriesToRemove.length; i++) {
618 toc.removeChild(tocEntriesToRemove[i]);
619 }
620
621 // Rebuild TOC entries.
Junio C Hamano7bd050f2011-09-22 06:32:22622 var entries = tocEntries(document.getElementById("content"), toclevels);
623 for (var i = 0; i < entries.length; ++i) {
624 var entry = entries[i];
625 if (entry.element.id == "")
626 entry.element.id = "_toc_" + i;
627 var a = document.createElement("a");
628 a.href = "#" + entry.element.id;
629 a.appendChild(document.createTextNode(entry.text));
630 var div = document.createElement("div");
631 div.appendChild(a);
632 div.className = "toclevel" + entry.toclevel;
633 toc.appendChild(div);
634 }
635 if (entries.length == 0)
636 toc.parentNode.removeChild(toc);
637},
638
639
640/////////////////////////////////////////////////////////////////////
641// Footnotes generator
642/////////////////////////////////////////////////////////////////////
643
644/* Based on footnote generation code from:
645 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
646 */
647
648footnotes: function () {
Junio C Hamano9d971152012-12-19 00:43:11649 // Delete existing footnote entries in case we're reloading the footnodes.
650 var i;
Junio C Hamano7bd050f2011-09-22 06:32:22651 var noteholder = document.getElementById("footnotes");
Junio C Hamano9d971152012-12-19 00:43:11652 if (!noteholder) {
653 return;
654 }
655 var entriesToRemove = [];
656 for (i = 0; i < noteholder.childNodes.length; i++) {
657 var entry = noteholder.childNodes[i];
Junio C Hamanoac12f0e2014-09-19 22:32:51658 if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")
Junio C Hamano9d971152012-12-19 00:43:11659 entriesToRemove.push(entry);
660 }
661 for (i = 0; i < entriesToRemove.length; i++) {
662 noteholder.removeChild(entriesToRemove[i]);
663 }
664
665 // Rebuild footnote entries.
666 var cont = document.getElementById("content");
Junio C Hamano7bd050f2011-09-22 06:32:22667 var spans = cont.getElementsByTagName("span");
668 var refs = {};
669 var n = 0;
670 for (i=0; i<spans.length; i++) {
671 if (spans[i].className == "footnote") {
672 n++;
Junio C Hamano9d971152012-12-19 00:43:11673 var note = spans[i].getAttribute("data-note");
674 if (!note) {
675 // Use [\s\S] in place of . so multi-line matches work.
676 // Because JavaScript has no s (dotall) regex flag.
677 note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
678 spans[i].innerHTML =
679 "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
680 "' title='View footnote' class='footnote'>" + n + "</a>]";
681 spans[i].setAttribute("data-note", note);
682 }
Junio C Hamano7bd050f2011-09-22 06:32:22683 noteholder.innerHTML +=
684 "<div class='footnote' id='_footnote_" + n + "'>" +
685 "<a href='#_footnoteref_" + n + "' title='Return to text'>" +
686 n + "</a>. " + note + "</div>";
Junio C Hamano7bd050f2011-09-22 06:32:22687 var id =spans[i].getAttribute("id");
688 if (id != null) refs["#"+id] = n;
689 }
690 }
691 if (n == 0)
692 noteholder.parentNode.removeChild(noteholder);
693 else {
694 // Process footnoterefs.
695 for (i=0; i<spans.length; i++) {
696 if (spans[i].className == "footnoteref") {
697 var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");
698 href = href.match(/#.*/)[0]; // Because IE return full URL.
699 n = refs[href];
700 spans[i].innerHTML =
701 "[<a href='#_footnote_" + n +
702 "' title='View footnote' class='footnote'>" + n + "</a>]";
703 }
704 }
705 }
Junio C Hamano9d971152012-12-19 00:43:11706},
707
708install: function(toclevels) {
709 var timerId;
710
711 function reinstall() {
712 asciidoc.footnotes();
713 if (toclevels) {
714 asciidoc.toc(toclevels);
715 }
716 }
717
718 function reinstallAndRemoveTimer() {
719 clearInterval(timerId);
720 reinstall();
721 }
722
723 timerId = setInterval(reinstall, 500);
724 if (document.addEventListener)
725 document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);
726 else
727 window.onload = reinstallAndRemoveTimer;
Junio C Hamano7bd050f2011-09-22 06:32:22728}
729
730}
Junio C Hamano9d971152012-12-19 00:43:11731asciidoc.install();
Junio C Hamano7bd050f2011-09-22 06:32:22732/*]]>*/
733</script>
Junio C Hamano1a4e8412005-12-27 08:17:23734</head>
Junio C Hamano9d971152012-12-19 00:43:11735<body class="manpage">
Junio C Hamano1a4e8412005-12-27 08:17:23736<div id="header">
737<h1>
Junio C Hamanof7c042d2008-06-06 22:50:53738git(1) Manual Page
Junio C Hamano1a4e8412005-12-27 08:17:23739</h1>
740<h2>NAME</h2>
741<div class="sectionbody">
742<p>git -
743 the stupid content tracker
744</p>
745</div>
746</div>
Junio C Hamano7bd050f2011-09-22 06:32:22747<div id="content">
Junio C Hamano9d971152012-12-19 00:43:11748<div class="sect1">
Junio C Hamano68cf15a2010-11-06 01:01:59749<h2 id="_synopsis">SYNOPSIS</h2>
Junio C Hamano1a4e8412005-12-27 08:17:23750<div class="sectionbody">
Junio C Hamano6b2cee12006-08-26 08:43:31751<div class="verseblock">
Junio C Hamano79f4c7c2013-09-20 21:03:37752<pre class="content"><em>git</em> [--version] [--help] [-C &lt;path&gt;] [-c &lt;name&gt;=&lt;value&gt;]
Junio C Hamano90ff60f2012-02-20 10:25:14753 [--exec-path[=&lt;path&gt;]] [--html-path] [--man-path] [--info-path]
Junio C Hamanob9d9d902018-05-23 07:07:42754 [-p|--paginate|-P|--no-pager] [--no-replace-objects] [--bare]
Junio C Hamanof7279012011-08-18 06:13:13755 [--git-dir=&lt;path&gt;] [--work-tree=&lt;path&gt;] [--namespace=&lt;name&gt;]
Junio C Hamano4a401d52016-10-26 22:24:37756 [--super-prefix=&lt;path&gt;]
Junio C Hamano9d971152012-12-19 00:43:11757 &lt;command&gt; [&lt;args&gt;]</pre>
758<div class="attribution">
Junio C Hamano68cf15a2010-11-06 01:01:59759</div></div>
Junio C Hamano1a4e8412005-12-27 08:17:23760</div>
Junio C Hamano9d971152012-12-19 00:43:11761</div>
762<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31763<h2 id="_description">DESCRIPTION</h2>
Junio C Hamano1a4e8412005-12-27 08:17:23764<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:59765<div class="paragraph"><p>Git is a fast, scalable, distributed revision control system with an
Junio C Hamanoe27fb932006-04-03 05:34:10766unusually rich command set that provides both high-level operations
Junio C Hamanoba4b9282008-07-06 05:20:31767and full access to internals.</p></div>
Junio C Hamanoa28a9202012-06-21 07:08:23768<div class="paragraph"><p>See <a href="gittutorial.html">gittutorial(7)</a> to get started, then see
Junio C Hamano446e30b2014-10-16 21:30:32769<a href="giteveryday.html">giteveryday(7)</a> for a useful minimum set of
Junio C Hamanod0316112012-08-22 19:55:29770commands. The <a href="user-manual.html">Git User&#8217;s Manual</a> has a more
771in-depth introduction.</p></div>
772<div class="paragraph"><p>After you mastered the basic concepts, you can come back to this
Junio C Hamano076ffcc2013-02-06 05:13:21773page to learn what commands Git offers. You can learn more about
774individual Git commands with "git help command". <a href="gitcli.html">gitcli(7)</a>
Junio C Hamanoe1aeb5e2014-06-06 19:16:29775manual page gives you an overview of the command-line command syntax.</p></div>
Junio C Hamano48931e22016-07-11 20:08:47776<div class="paragraph"><p>A formatted and hyperlinked copy of the latest Git documentation
Junio C Hamano73c64862019-06-18 03:24:20777can be viewed at <a href="https://git.github.io/htmldocs/git.html">https://git.github.io/htmldocs/git.html</a>
778or <a href="https://git-scm.com/docs">https://git-scm.com/docs</a>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:23779</div>
Junio C Hamano9d971152012-12-19 00:43:11780</div>
781<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:31782<h2 id="_options">OPTIONS</h2>
Junio C Hamano1a4e8412005-12-27 08:17:23783<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:59784<div class="dlist"><dl>
785<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:23786--version
787</dt>
788<dd>
789<p>
Junio C Hamano076ffcc2013-02-06 05:13:21790 Prints the Git suite version that the <em>git</em> program came from.
Junio C Hamano1a4e8412005-12-27 08:17:23791</p>
792</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59793<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:23794--help
795</dt>
796<dd>
797<p>
Junio C Hamano01078922006-03-10 00:31:47798 Prints the synopsis and a list of the most commonly used
Junio C Hamano92d80372016-07-13 22:00:05799 commands. If the option <code>--all</code> or <code>-a</code> is given then all
Junio C Hamano076ffcc2013-02-06 05:13:21800 available commands are printed. If a Git command is named this
Junio C Hamano58256872007-12-04 08:31:13801 option will bring up the manual page for that command.
Junio C Hamano1a4e8412005-12-27 08:17:23802</p>
Junio C Hamano68cf15a2010-11-06 01:01:59803<div class="paragraph"><p>Other options are available to control how the manual page is
Junio C Hamanoa28a9202012-06-21 07:08:23804displayed. See <a href="git-help.html">git-help(1)</a> for more information,
Junio C Hamanoac12f0e2014-09-19 22:32:51805because <code>git --help ...</code> is converted internally into <code>git
806help ...</code>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:23807</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59808<dt class="hdlist1">
Junio C Hamano79f4c7c2013-09-20 21:03:37809-C &lt;path&gt;
810</dt>
811<dd>
812<p>
813 Run as if git was started in <em>&lt;path&gt;</em> instead of the current working
Junio C Hamanoac12f0e2014-09-19 22:32:51814 directory. When multiple <code>-C</code> options are given, each subsequent
815 non-absolute <code>-C &lt;path&gt;</code> is interpreted relative to the preceding <code>-C
Junio C Hamano0906e982019-07-12 20:33:43816 &lt;path&gt;</code>. If <em>&lt;path&gt;</em> is present but empty, e.g. <code>-C ""</code>, then the
817 current working directory is left unchanged.
Junio C Hamano79f4c7c2013-09-20 21:03:37818</p>
Junio C Hamanoac12f0e2014-09-19 22:32:51819<div class="paragraph"><p>This option affects options that expect path name like <code>--git-dir</code> and
820<code>--work-tree</code> in that their interpretations of the path names would be
821made relative to the working directory caused by the <code>-C</code> option. For
Junio C Hamano79f4c7c2013-09-20 21:03:37822example the following invocations are equivalent:</p></div>
823<div class="literalblock">
824<div class="content">
Junio C Hamanoac12f0e2014-09-19 22:32:51825<pre><code>git --git-dir=a.git --work-tree=b -C c status
826git --git-dir=c/a.git --work-tree=c/b status</code></pre>
Junio C Hamano79f4c7c2013-09-20 21:03:37827</div></div>
828</dd>
829<dt class="hdlist1">
Junio C Hamanocc7636a2010-05-21 14:57:53830-c &lt;name&gt;=&lt;value&gt;
831</dt>
832<dd>
833<p>
834 Pass a configuration parameter to the command. The value
835 given will override values from configuration files.
836 The &lt;name&gt; is expected in the same format as listed by
837 <em>git config</em> (subkeys separated by dots).
838</p>
Junio C Hamanoac12f0e2014-09-19 22:32:51839<div class="paragraph"><p>Note that omitting the <code>=</code> in <code>git -c foo.bar ...</code> is allowed and sets
840<code>foo.bar</code> to the boolean true value (just like <code>[foo]bar</code> would in a
841config file). Including the equals but with an empty value (like <code>git -c
Junio C Hamano139b7d12017-10-03 07:10:59842foo.bar= ...</code>) sets <code>foo.bar</code> to the empty string which <code>git config
Junio C Hamano32a75272018-10-16 07:37:35843--type=bool</code> will convert to <code>false</code>.</p></div>
Junio C Hamanocc7636a2010-05-21 14:57:53844</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59845<dt class="hdlist1">
Junio C Hamanod2179ef2010-10-22 04:12:17846--exec-path[=&lt;path&gt;]
Junio C Hamano1a4e8412005-12-27 08:17:23847</dt>
848<dd>
849<p>
Junio C Hamano076ffcc2013-02-06 05:13:21850 Path to wherever your core Git programs are installed.
Junio C Hamano1a4e8412005-12-27 08:17:23851 This can also be controlled by setting the GIT_EXEC_PATH
Junio C Hamanoba4b9282008-07-06 05:20:31852 environment variable. If no path is given, <em>git</em> will print
Junio C Hamano1a4e8412005-12-27 08:17:23853 the current setting and then exit.
854</p>
855</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59856<dt class="hdlist1">
Junio C Hamanob4a9ede2009-04-08 07:36:32857--html-path
858</dt>
859<dd>
860<p>
Junio C Hamano076ffcc2013-02-06 05:13:21861 Print the path, without trailing slash, where Git&#8217;s HTML
Junio C Hamano5f2627d2011-05-06 20:23:48862 documentation is installed and exit.
863</p>
864</dd>
865<dt class="hdlist1">
866--man-path
867</dt>
868<dd>
869<p>
Junio C Hamanoac12f0e2014-09-19 22:32:51870 Print the manpath (see <code>man(1)</code>) for the man pages for
Junio C Hamano076ffcc2013-02-06 05:13:21871 this version of Git and exit.
Junio C Hamano5f2627d2011-05-06 20:23:48872</p>
873</dd>
874<dt class="hdlist1">
875--info-path
876</dt>
877<dd>
878<p>
879 Print the path where the Info files documenting this
Junio C Hamano076ffcc2013-02-06 05:13:21880 version of Git are installed and exit.
Junio C Hamanob4a9ede2009-04-08 07:36:32881</p>
882</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59883<dt class="hdlist1">
Junio C Hamanoeb415992008-06-08 22:49:47884-p
885</dt>
Junio C Hamano68cf15a2010-11-06 01:01:59886<dt class="hdlist1">
Junio C Hamanoeb415992008-06-08 22:49:47887--paginate
Junio C Hamanof870ef82006-07-29 09:10:13888</dt>
889<dd>
890<p>
Junio C Hamano4aa0bcc2010-03-03 05:13:12891 Pipe all output into <em>less</em> (or if set, $PAGER) if standard
Junio C Hamanoac12f0e2014-09-19 22:32:51892 output is a terminal. This overrides the <code>pager.&lt;cmd&gt;</code>
Junio C Hamano4aa0bcc2010-03-03 05:13:12893 configuration options (see the "Configuration Mechanism" section
894 below).
Junio C Hamanof870ef82006-07-29 09:10:13895</p>
896</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59897<dt class="hdlist1">
Junio C Hamanob9d9d902018-05-23 07:07:42898-P
899</dt>
900<dt class="hdlist1">
Junio C Hamanocae86272007-08-21 02:20:49901--no-pager
902</dt>
903<dd>
904<p>
Junio C Hamano076ffcc2013-02-06 05:13:21905 Do not pipe Git output into a pager.
Junio C Hamanocae86272007-08-21 02:20:49906</p>
907</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59908<dt class="hdlist1">
Junio C Hamanof870ef82006-07-29 09:10:13909--git-dir=&lt;path&gt;
910</dt>
911<dd>
912<p>
Junio C Hamanob7e497f2020-02-12 21:41:37913 Set the path to the repository (".git" directory). This can also be
914 controlled by setting the <code>GIT_DIR</code> environment variable. It can be
915 an absolute path or relative path to current working directory.
Junio C Hamanof870ef82006-07-29 09:10:13916</p>
Junio C Hamanob7e497f2020-02-12 21:41:37917<div class="paragraph"><p>Specifying the location of the ".git" directory using this
918option (or <code>GIT_DIR</code> environment variable) turns off the
919repository discovery that tries to find a directory with
920".git" subdirectory (which is how the repository and the
921top-level of the working tree are discovered), and tells Git
922that you are at the top level of the working tree. If you
923are not at the top-level directory of the working tree, you
924should tell Git where the top-level of the working tree is,
925with the <code>--work-tree=&lt;path&gt;</code> option (or <code>GIT_WORK_TREE</code>
926environment variable)</p></div>
927<div class="paragraph"><p>If you just want to run git as if it was started in <code>&lt;path&gt;</code> then use
928<code>git -C &lt;path&gt;</code>.</p></div>
Junio C Hamanof870ef82006-07-29 09:10:13929</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59930<dt class="hdlist1">
Junio C Hamanod526ba92007-07-02 00:17:42931--work-tree=&lt;path&gt;
932</dt>
933<dd>
934<p>
Junio C Hamano80d58462011-01-24 22:52:52935 Set the path to the working tree. It can be an absolute path
936 or a path relative to the current working directory.
Junio C Hamanod526ba92007-07-02 00:17:42937 This can also be controlled by setting the GIT_WORK_TREE
938 environment variable and the core.worktree configuration
Junio C Hamanoa28a9202012-06-21 07:08:23939 variable (see core.worktree in <a href="git-config.html">git-config(1)</a> for a
Junio C Hamano80d58462011-01-24 22:52:52940 more detailed discussion).
Junio C Hamanod526ba92007-07-02 00:17:42941</p>
942</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59943<dt class="hdlist1">
Junio C Hamanof7279012011-08-18 06:13:13944--namespace=&lt;path&gt;
945</dt>
946<dd>
947<p>
Junio C Hamano076ffcc2013-02-06 05:13:21948 Set the Git namespace. See <a href="gitnamespaces.html">gitnamespaces(7)</a> for more
Junio C Hamanoac12f0e2014-09-19 22:32:51949 details. Equivalent to setting the <code>GIT_NAMESPACE</code> environment
Junio C Hamanof7279012011-08-18 06:13:13950 variable.
951</p>
952</dd>
953<dt class="hdlist1">
Junio C Hamano4a401d52016-10-26 22:24:37954--super-prefix=&lt;path&gt;
955</dt>
956<dd>
957<p>
958 Currently for internal use only. Set a prefix which gives a path from
959 above a repository down to its root. One use is to give submodules
960 context about the superproject that invoked it.
961</p>
962</dd>
963<dt class="hdlist1">
Junio C Hamanof870ef82006-07-29 09:10:13964--bare
965</dt>
966<dd>
967<p>
Junio C Hamanoc435b1c2007-08-28 06:25:35968 Treat the repository as a bare repository. If GIT_DIR
969 environment is not set, it is set to the current working
970 directory.
Junio C Hamanof870ef82006-07-29 09:10:13971</p>
972</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59973<dt class="hdlist1">
Junio C Hamano3d23a0a2009-10-19 08:04:30974--no-replace-objects
975</dt>
976<dd>
977<p>
Junio C Hamano076ffcc2013-02-06 05:13:21978 Do not use replacement refs to replace Git objects. See
Junio C Hamanoa28a9202012-06-21 07:08:23979 <a href="git-replace.html">git-replace(1)</a> for more information.
Junio C Hamano3d23a0a2009-10-19 08:04:30980</p>
981</dd>
Junio C Hamanoabad6da2013-01-06 09:06:32982<dt class="hdlist1">
983--literal-pathspecs
984</dt>
985<dd>
986<p>
Junio C Hamano8eac2682013-09-09 22:35:20987 Treat pathspecs literally (i.e. no globbing, no pathspec magic).
Junio C Hamanoac12f0e2014-09-19 22:32:51988 This is equivalent to setting the <code>GIT_LITERAL_PATHSPECS</code> environment
989 variable to <code>1</code>.
Junio C Hamanoabad6da2013-01-06 09:06:32990</p>
991</dd>
Junio C Hamanob9acecb2013-10-16 01:18:56992<dt class="hdlist1">
993--glob-pathspecs
994</dt>
995<dd>
996<p>
Junio C Hamano8eac2682013-09-09 22:35:20997 Add "glob" magic to all pathspec. This is equivalent to setting
Junio C Hamanoac12f0e2014-09-19 22:32:51998 the <code>GIT_GLOB_PATHSPECS</code> environment variable to <code>1</code>. Disabling
Junio C Hamano8eac2682013-09-09 22:35:20999 globbing on individual pathspecs can be done using pathspec
Junio C Hamanob9acecb2013-10-16 01:18:561000 magic ":(literal)"
1001</p>
1002</dd>
1003<dt class="hdlist1">
1004--noglob-pathspecs
1005</dt>
1006<dd>
1007<p>
Junio C Hamano8eac2682013-09-09 22:35:201008 Add "literal" magic to all pathspec. This is equivalent to setting
Junio C Hamanoac12f0e2014-09-19 22:32:511009 the <code>GIT_NOGLOB_PATHSPECS</code> environment variable to <code>1</code>. Enabling
Junio C Hamano8eac2682013-09-09 22:35:201010 globbing on individual pathspecs can be done using pathspec
Junio C Hamanob9acecb2013-10-16 01:18:561011 magic ":(glob)"
1012</p>
1013</dd>
1014<dt class="hdlist1">
1015--icase-pathspecs
1016</dt>
1017<dd>
1018<p>
Junio C Hamano8eac2682013-09-09 22:35:201019 Add "icase" magic to all pathspec. This is equivalent to setting
Junio C Hamanoac12f0e2014-09-19 22:32:511020 the <code>GIT_ICASE_PATHSPECS</code> environment variable to <code>1</code>.
Junio C Hamanob9acecb2013-10-16 01:18:561021</p>
1022</dd>
Junio C Hamano139b7d12017-10-03 07:10:591023<dt class="hdlist1">
1024--no-optional-locks
1025</dt>
1026<dd>
1027<p>
1028 Do not perform optional operations that require locks. This is
1029 equivalent to setting the <code>GIT_OPTIONAL_LOCKS</code> to <code>0</code>.
1030</p>
1031</dd>
Junio C Hamanoc9cb5172018-06-01 07:13:441032<dt class="hdlist1">
1033--list-cmds=group[,group&#8230;]
1034</dt>
1035<dd>
1036<p>
1037 List commands by group. This is an internal/experimental
1038 option and may change or be removed in the future. Supported
1039 groups are: builtins, parseopt (builtin commands that use
1040 parse-options), main (all commands in libexec directory),
1041 others (all other commands in <code>$PATH</code> that have git- prefix),
1042 list-&lt;category&gt; (see categories in command-list.txt),
1043 nohelpers (exclude helper commands), alias and config
1044 (retrieve command list from config variable completion.commands)
1045</p>
1046</dd>
Junio C Hamanob9acecb2013-10-16 01:18:561047</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:231048</div>
Junio C Hamano9d971152012-12-19 00:43:111049</div>
1050<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:311051<h2 id="_git_commands">GIT COMMANDS</h2>
Junio C Hamano1a4e8412005-12-27 08:17:231052<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:211053<div class="paragraph"><p>We divide Git into high level ("porcelain") commands and low level
Junio C Hamanoba4b9282008-07-06 05:20:311054("plumbing") commands.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:231055</div>
Junio C Hamano9d971152012-12-19 00:43:111056</div>
1057<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:311058<h2 id="_high_level_commands_porcelain">High-level commands (porcelain)</h2>
Junio C Hamano1a4e8412005-12-27 08:17:231059<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:591060<div class="paragraph"><p>We separate the porcelain commands into the main commands and some
Junio C Hamanoba4b9282008-07-06 05:20:311061ancillary user utilities.</p></div>
Junio C Hamano9d971152012-12-19 00:43:111062<div class="sect2">
1063<h3 id="_main_porcelain_commands">Main porcelain commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591064<div class="dlist"><dl>
1065<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231066<a href="git-add.html">git-add(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231067</dt>
1068<dd>
1069<p>
Junio C Hamano4cd1c0e2007-08-06 04:39:141070 Add file contents to the index.
Junio C Hamano1a4e8412005-12-27 08:17:231071</p>
1072</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591073<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231074<a href="git-am.html">git-am(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231075</dt>
1076<dd>
1077<p>
Junio C Hamano7c73c662007-01-19 00:37:501078 Apply a series of patches from a mailbox.
Junio C Hamano1a4e8412005-12-27 08:17:231079</p>
1080</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591081<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231082<a href="git-archive.html">git-archive(1)</a>
Junio C Hamano817abb42006-09-26 07:16:581083</dt>
1084<dd>
1085<p>
Junio C Hamano4ec06712007-06-09 20:39:331086 Create an archive of files from a named tree.
Junio C Hamano817abb42006-09-26 07:16:581087</p>
1088</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591089<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231090<a href="git-bisect.html">git-bisect(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231091</dt>
1092<dd>
1093<p>
Junio C Hamano9c512872015-08-12 21:59:251094 Use binary search to find the commit that introduced a bug.
Junio C Hamano1a4e8412005-12-27 08:17:231095</p>
1096</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591097<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231098<a href="git-branch.html">git-branch(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231099</dt>
1100<dd>
1101<p>
Junio C Hamano7c73c662007-01-19 00:37:501102 List, create, or delete branches.
Junio C Hamano1a4e8412005-12-27 08:17:231103</p>
1104</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591105<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231106<a href="git-bundle.html">git-bundle(1)</a>
Junio C Hamano6ac2f142007-03-01 01:24:561107</dt>
1108<dd>
1109<p>
1110 Move objects and refs by archive.
1111</p>
1112</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591113<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231114<a href="git-checkout.html">git-checkout(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231115</dt>
1116<dd>
1117<p>
Junio C Hamano823eebb2015-07-10 22:29:341118 Switch branches or restore working tree files.
Junio C Hamano1a4e8412005-12-27 08:17:231119</p>
1120</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591121<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231122<a href="git-cherry-pick.html">git-cherry-pick(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231123</dt>
1124<dd>
1125<p>
Junio C Hamano89a57342010-06-22 23:22:551126 Apply the changes introduced by some existing commits.
Junio C Hamano1a4e8412005-12-27 08:17:231127</p>
1128</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591129<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231130<a href="git-citool.html">git-citool(1)</a>
Junio C Hamano58784fc2007-06-23 08:48:571131</dt>
1132<dd>
1133<p>
1134 Graphical alternative to git-commit.
1135</p>
1136</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591137<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231138<a href="git-clean.html">git-clean(1)</a>
Junio C Hamano54559c82006-04-13 07:45:121139</dt>
1140<dd>
1141<p>
1142 Remove untracked files from the working tree.
1143</p>
1144</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591145<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231146<a href="git-clone.html">git-clone(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231147</dt>
1148<dd>
1149<p>
Junio C Hamano4ec06712007-06-09 20:39:331150 Clone a repository into a new directory.
Junio C Hamano1a4e8412005-12-27 08:17:231151</p>
1152</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591153<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231154<a href="git-commit.html">git-commit(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231155</dt>
1156<dd>
1157<p>
1158 Record changes to the repository.
1159</p>
1160</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591161<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231162<a href="git-describe.html">git-describe(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501163</dt>
1164<dd>
1165<p>
Junio C Hamano68e72b72017-12-28 23:20:521166 Give an object a human readable name based on an available ref.
Junio C Hamano4ad294b2007-01-20 02:22:501167</p>
1168</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591169<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231170<a href="git-diff.html">git-diff(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231171</dt>
1172<dd>
1173<p>
1174 Show changes between commits, commit and working tree, etc.
1175</p>
1176</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591177<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231178<a href="git-fetch.html">git-fetch(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231179</dt>
1180<dd>
1181<p>
Junio C Hamano7c73c662007-01-19 00:37:501182 Download objects and refs from another repository.
Junio C Hamano1a4e8412005-12-27 08:17:231183</p>
1184</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591185<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231186<a href="git-format-patch.html">git-format-patch(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231187</dt>
1188<dd>
1189<p>
1190 Prepare patches for e-mail submission.
1191</p>
1192</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591193<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231194<a href="git-gc.html">git-gc(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501195</dt>
1196<dd>
1197<p>
1198 Cleanup unnecessary files and optimize the local repository.
1199</p>
1200</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591201<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231202<a href="git-grep.html">git-grep(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231203</dt>
1204<dd>
1205<p>
1206 Print lines matching a pattern.
1207</p>
1208</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591209<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231210<a href="git-gui.html">git-gui(1)</a>
Junio C Hamano58784fc2007-06-23 08:48:571211</dt>
1212<dd>
1213<p>
1214 A portable graphical interface to Git.
1215</p>
1216</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591217<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231218<a href="git-init.html">git-init(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501219</dt>
1220<dd>
1221<p>
Junio C Hamano076ffcc2013-02-06 05:13:211222 Create an empty Git repository or reinitialize an existing one.
Junio C Hamano4ad294b2007-01-20 02:22:501223</p>
1224</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591225<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231226<a href="git-log.html">git-log(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231227</dt>
1228<dd>
1229<p>
Junio C Hamano7c73c662007-01-19 00:37:501230 Show commit logs.
Junio C Hamano1a4e8412005-12-27 08:17:231231</p>
1232</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591233<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231234<a href="git-merge.html">git-merge(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231235</dt>
1236<dd>
1237<p>
Junio C Hamano7c73c662007-01-19 00:37:501238 Join two or more development histories together.
Junio C Hamano1a4e8412005-12-27 08:17:231239</p>
1240</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591241<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231242<a href="git-mv.html">git-mv(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231243</dt>
1244<dd>
1245<p>
1246 Move or rename a file, a directory, or a symlink.
1247</p>
1248</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591249<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231250<a href="git-notes.html">git-notes(1)</a>
Junio C Hamano3b70d3c2009-11-21 17:37:371251</dt>
1252<dd>
1253<p>
Junio C Hamanoa574a092010-06-13 19:57:101254 Add or inspect object notes.
Junio C Hamano3b70d3c2009-11-21 17:37:371255</p>
1256</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591257<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231258<a href="git-pull.html">git-pull(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231259</dt>
1260<dd>
1261<p>
Junio C Hamano8401f142013-07-12 22:47:461262 Fetch from and integrate with another repository or a local branch.
Junio C Hamano1a4e8412005-12-27 08:17:231263</p>
1264</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591265<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231266<a href="git-push.html">git-push(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231267</dt>
1268<dd>
1269<p>
1270 Update remote refs along with associated objects.
1271</p>
1272</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591273<dt class="hdlist1">
Junio C Hamano11ae3202018-08-20 20:15:421274<a href="git-range-diff.html">git-range-diff(1)</a>
1275</dt>
1276<dd>
1277<p>
1278 Compare two commit ranges (e.g. two versions of a branch).
1279</p>
1280</dd>
1281<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231282<a href="git-rebase.html">git-rebase(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231283</dt>
1284<dd>
1285<p>
Junio C Hamanodf97ffc2016-03-10 22:58:001286 Reapply commits on top of another base tip.
Junio C Hamano1a4e8412005-12-27 08:17:231287</p>
1288</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591289<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231290<a href="git-reset.html">git-reset(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231291</dt>
1292<dd>
1293<p>
1294 Reset current HEAD to the specified state.
1295</p>
1296</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591297<dt class="hdlist1">
Junio C Hamanoc9f11c22019-07-10 02:54:041298<a href="git-restore.html">git-restore(1)</a>
1299</dt>
1300<dd>
1301<p>
1302 Restore working tree files.
1303</p>
1304</dd>
1305<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231306<a href="git-revert.html">git-revert(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231307</dt>
1308<dd>
1309<p>
Junio C Hamano89a57342010-06-22 23:22:551310 Revert some existing commits.
Junio C Hamano1a4e8412005-12-27 08:17:231311</p>
1312</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591313<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231314<a href="git-rm.html">git-rm(1)</a>
Junio C Hamano54559c82006-04-13 07:45:121315</dt>
1316<dd>
1317<p>
1318 Remove files from the working tree and from the index.
1319</p>
1320</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591321<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231322<a href="git-shortlog.html">git-shortlog(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231323</dt>
1324<dd>
1325<p>
Junio C Hamano1aa40d22010-01-21 17:46:431326 Summarize <em>git log</em> output.
Junio C Hamano1a4e8412005-12-27 08:17:231327</p>
1328</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591329<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231330<a href="git-show.html">git-show(1)</a>
Junio C Hamano2b135272006-03-18 07:45:421331</dt>
1332<dd>
1333<p>
Junio C Hamano7c73c662007-01-19 00:37:501334 Show various types of objects.
Junio C Hamano2b135272006-03-18 07:45:421335</p>
1336</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591337<dt class="hdlist1">
Junio C Hamano2f5a9892019-12-25 21:12:551338<a href="git-sparse-checkout.html">git-sparse-checkout(1)</a>
1339</dt>
1340<dd>
1341<p>
1342 Initialize and modify the sparse-checkout.
1343</p>
1344</dd>
1345<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231346<a href="git-stash.html">git-stash(1)</a>
Junio C Hamano1d90cb02007-07-03 07:05:311347</dt>
1348<dd>
1349<p>
1350 Stash the changes in a dirty working directory away.
1351</p>
1352</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591353<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231354<a href="git-status.html">git-status(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231355</dt>
1356<dd>
1357<p>
Junio C Hamano7c73c662007-01-19 00:37:501358 Show the working tree status.
Junio C Hamano1a4e8412005-12-27 08:17:231359</p>
1360</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591361<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231362<a href="git-submodule.html">git-submodule(1)</a>
Junio C Hamano38b693c2007-06-03 08:40:141363</dt>
1364<dd>
1365<p>
1366 Initialize, update or inspect submodules.
1367</p>
1368</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591369<dt class="hdlist1">
Junio C Hamanoc9f11c22019-07-10 02:54:041370<a href="git-switch.html">git-switch(1)</a>
1371</dt>
1372<dd>
1373<p>
1374 Switch branches.
1375</p>
1376</dd>
1377<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231378<a href="git-tag.html">git-tag(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501379</dt>
1380<dd>
1381<p>
Junio C Hamanodb450ba2007-01-21 08:57:141382 Create, list, delete or verify a tag object signed with GPG.
Junio C Hamano4ad294b2007-01-20 02:22:501383</p>
1384</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591385<dt class="hdlist1">
Junio C Hamanob5dd60f2015-07-13 21:48:051386<a href="git-worktree.html">git-worktree(1)</a>
1387</dt>
1388<dd>
1389<p>
Junio C Hamano9c512872015-08-12 21:59:251390 Manage multiple working trees.
Junio C Hamanob5dd60f2015-07-13 21:48:051391</p>
1392</dd>
1393<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231394<a href="gitk.html">gitk(1)</a>
Junio C Hamano0a16b952007-12-02 18:56:341395</dt>
1396<dd>
1397<p>
Junio C Hamano076ffcc2013-02-06 05:13:211398 The Git repository browser.
Junio C Hamano0a16b952007-12-02 18:56:341399</p>
1400</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311401</dl></div>
Junio C Hamano9d971152012-12-19 00:43:111402</div>
1403<div class="sect2">
1404<h3 id="_ancillary_commands">Ancillary Commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591405<div class="paragraph"><p>Manipulators:</p></div>
1406<div class="dlist"><dl>
1407<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231408<a href="git-config.html">git-config(1)</a>
Junio C Hamanob1d6e882007-08-11 08:30:161409</dt>
1410<dd>
1411<p>
1412 Get and set repository or global options.
1413</p>
1414</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591415<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231416<a href="git-fast-export.html">git-fast-export(1)</a>
Junio C Hamano58256872007-12-04 08:31:131417</dt>
1418<dd>
1419<p>
1420 Git data exporter.
1421</p>
1422</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591423<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231424<a href="git-fast-import.html">git-fast-import(1)</a>
Junio C Hamanodfc4ce72007-02-07 23:17:291425</dt>
1426<dd>
1427<p>
Junio C Hamano053827f2007-02-14 07:23:581428 Backend for fast Git data importers.
Junio C Hamanodfc4ce72007-02-07 23:17:291429</p>
1430</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591431<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231432<a href="git-filter-branch.html">git-filter-branch(1)</a>
Junio C Hamanobb0f4042007-07-04 06:41:401433</dt>
1434<dd>
1435<p>
1436 Rewrite branches.
1437</p>
1438</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591439<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231440<a href="git-mergetool.html">git-mergetool(1)</a>
Junio C Hamano103ad7f2007-03-14 11:19:261441</dt>
1442<dd>
1443<p>
1444 Run merge conflict resolution tools to resolve merge conflicts.
1445</p>
1446</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591447<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231448<a href="git-pack-refs.html">git-pack-refs(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501449</dt>
1450<dd>
1451<p>
1452 Pack heads and tags for efficient repository access.
1453</p>
1454</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591455<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231456<a href="git-prune.html">git-prune(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501457</dt>
1458<dd>
1459<p>
Junio C Hamano4ec06712007-06-09 20:39:331460 Prune all unreachable objects from the object database.
Junio C Hamano4ad294b2007-01-20 02:22:501461</p>
1462</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591463<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231464<a href="git-reflog.html">git-reflog(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501465</dt>
1466<dd>
1467<p>
1468 Manage reflog information.
1469</p>
1470</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591471<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231472<a href="git-remote.html">git-remote(1)</a>
Junio C Hamano053827f2007-02-14 07:23:581473</dt>
1474<dd>
1475<p>
Junio C Hamano5b3533d2014-02-27 23:07:151476 Manage set of tracked repositories.
Junio C Hamano053827f2007-02-14 07:23:581477</p>
1478</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591479<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231480<a href="git-repack.html">git-repack(1)</a>
Junio C Hamanob1d6e882007-08-11 08:30:161481</dt>
1482<dd>
1483<p>
1484 Pack unpacked objects in a repository.
1485</p>
1486</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591487<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231488<a href="git-replace.html">git-replace(1)</a>
Junio C Hamano55295992009-10-13 09:06:331489</dt>
1490<dd>
1491<p>
1492 Create, list, delete refs to replace objects.
1493</p>
1494</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311495</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:591496<div class="paragraph"><p>Interrogators:</p></div>
1497<div class="dlist"><dl>
1498<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231499<a href="git-annotate.html">git-annotate(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501500</dt>
1501<dd>
1502<p>
Junio C Hamano7924d5e2009-03-03 08:28:481503 Annotate file lines with commit information.
Junio C Hamano4ad294b2007-01-20 02:22:501504</p>
1505</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591506<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231507<a href="git-blame.html">git-blame(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501508</dt>
1509<dd>
1510<p>
1511 Show what revision and author last modified each line of a file.
1512</p>
1513</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591514<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231515<a href="git-count-objects.html">git-count-objects(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501516</dt>
1517<dd>
1518<p>
1519 Count unpacked number of objects and their disk consumption.
1520</p>
1521</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591522<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231523<a href="git-difftool.html">git-difftool(1)</a>
Junio C Hamano3bd66e92009-04-18 06:17:561524</dt>
1525<dd>
1526<p>
1527 Show changes using common diff tools.
1528</p>
1529</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591530<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231531<a href="git-fsck.html">git-fsck(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501532</dt>
1533<dd>
1534<p>
1535 Verifies the connectivity and validity of the objects in the database.
1536</p>
1537</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591538<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231539<a href="git-help.html">git-help(1)</a>
Junio C Hamano58256872007-12-04 08:31:131540</dt>
1541<dd>
1542<p>
Junio C Hamano076ffcc2013-02-06 05:13:211543 Display help information about Git.
Junio C Hamano58256872007-12-04 08:31:131544</p>
1545</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591546<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231547<a href="git-instaweb.html">git-instaweb(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501548</dt>
1549<dd>
1550<p>
1551 Instantly browse your working repository in gitweb.
1552</p>
1553</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591554<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231555<a href="git-merge-tree.html">git-merge-tree(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501556</dt>
1557<dd>
1558<p>
1559 Show three-way merge without touching index.
1560</p>
1561</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591562<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231563<a href="git-rerere.html">git-rerere(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501564</dt>
1565<dd>
1566<p>
1567 Reuse recorded resolution of conflicted merges.
1568</p>
1569</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591570<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231571<a href="git-show-branch.html">git-show-branch(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501572</dt>
1573<dd>
1574<p>
1575 Show branches and their commits.
1576</p>
1577</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591578<dt class="hdlist1">
Junio C Hamano56121c42014-07-10 23:23:351579<a href="git-verify-commit.html">git-verify-commit(1)</a>
1580</dt>
1581<dd>
1582<p>
1583 Check the GPG signature of commits.
1584</p>
1585</dd>
1586<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231587<a href="git-verify-tag.html">git-verify-tag(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231588</dt>
1589<dd>
1590<p>
Junio C Hamanob1d6e882007-08-11 08:30:161591 Check the GPG signature of tags.
Junio C Hamano1a4e8412005-12-27 08:17:231592</p>
1593</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591594<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231595<a href="git-whatchanged.html">git-whatchanged(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231596</dt>
1597<dd>
1598<p>
Junio C Hamano7c73c662007-01-19 00:37:501599 Show logs with difference each commit introduces.
Junio C Hamano1a4e8412005-12-27 08:17:231600</p>
1601</dd>
Junio C Hamano11821ed2011-10-19 18:42:091602<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231603<a href="gitweb.html">gitweb(1)</a>
Junio C Hamano11821ed2011-10-19 18:42:091604</dt>
1605<dd>
1606<p>
1607 Git web interface (web frontend to Git repositories).
1608</p>
1609</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311610</dl></div>
Junio C Hamano9d971152012-12-19 00:43:111611</div>
1612<div class="sect2">
1613<h3 id="_interacting_with_others">Interacting with Others</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591614<div class="paragraph"><p>These commands are to interact with foreign SCM and with other
Junio C Hamanoba4b9282008-07-06 05:20:311615people via patch over e-mail.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:591616<div class="dlist"><dl>
1617<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231618<a href="git-archimport.html">git-archimport(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231619</dt>
1620<dd>
1621<p>
Junio C Hamano32a75272018-10-16 07:37:351622 Import a GNU Arch repository into Git.
Junio C Hamano1a4e8412005-12-27 08:17:231623</p>
1624</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591625<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231626<a href="git-cvsexportcommit.html">git-cvsexportcommit(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231627</dt>
1628<dd>
1629<p>
1630 Export a single commit to a CVS checkout.
1631</p>
1632</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591633<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231634<a href="git-cvsimport.html">git-cvsimport(1)</a>
Junio C Hamano7c73c662007-01-19 00:37:501635</dt>
1636<dd>
1637<p>
1638 Salvage your data out of another SCM people love to hate.
1639</p>
1640</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591641<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231642<a href="git-cvsserver.html">git-cvsserver(1)</a>
Junio C Hamano54559c82006-04-13 07:45:121643</dt>
1644<dd>
1645<p>
Junio C Hamano076ffcc2013-02-06 05:13:211646 A CVS server emulator for Git.
Junio C Hamano54559c82006-04-13 07:45:121647</p>
1648</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591649<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231650<a href="git-imap-send.html">git-imap-send(1)</a>
Junio C Hamano52299462006-12-28 00:59:381651</dt>
1652<dd>
1653<p>
Junio C Hamano5cf43ca2008-08-20 09:14:141654 Send a collection of patches from stdin to an IMAP folder.
Junio C Hamano1a4e8412005-12-27 08:17:231655</p>
1656</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591657<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231658<a href="git-p4.html">git-p4(1)</a>
Junio C Hamano4eda1362012-04-23 20:55:491659</dt>
1660<dd>
1661<p>
1662 Import from and submit to Perforce repositories.
1663</p>
1664</dd>
1665<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231666<a href="git-quiltimport.html">git-quiltimport(1)</a>
Junio C Hamano33db4372006-06-07 19:51:451667</dt>
1668<dd>
1669<p>
1670 Applies a quilt patchset onto the current branch.
1671</p>
1672</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591673<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231674<a href="git-request-pull.html">git-request-pull(1)</a>
Junio C Hamano74640642006-12-27 10:59:551675</dt>
1676<dd>
1677<p>
Junio C Hamano4ad294b2007-01-20 02:22:501678 Generates a summary of pending changes.
Junio C Hamano74640642006-12-27 10:59:551679</p>
1680</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591681<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231682<a href="git-send-email.html">git-send-email(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231683</dt>
1684<dd>
1685<p>
Junio C Hamano4ad294b2007-01-20 02:22:501686 Send a collection of patches as emails.
Junio C Hamano7c73c662007-01-19 00:37:501687</p>
1688</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591689<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231690<a href="git-svn.html">git-svn(1)</a>
Junio C Hamanob518f452006-08-04 00:18:061691</dt>
1692<dd>
1693<p>
Junio C Hamano076ffcc2013-02-06 05:13:211694 Bidirectional operation between a Subversion repository and Git.
Junio C Hamanob518f452006-08-04 00:18:061695</p>
1696</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311697</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:231698</div>
Junio C Hamanoc9f11c22019-07-10 02:54:041699<div class="sect2">
1700<h3 id="_reset_restore_and_revert">Reset, restore and revert</h3>
1701<div class="paragraph"><p>There are three commands with similar names: <code>git reset</code>,
1702<code>git restore</code> and <code>git revert</code>.</p></div>
1703<div class="ulist"><ul>
1704<li>
1705<p>
1706<a href="git-revert.html">git-revert(1)</a> is about making a new commit that reverts the
1707 changes made by other commits.
1708</p>
1709</li>
1710<li>
1711<p>
1712<a href="git-restore.html">git-restore(1)</a> is about restoring files in the working tree
1713 from either the index or another commit. This command does not
1714 update your branch. The command can also be used to restore files in
1715 the index from another commit.
1716</p>
1717</li>
1718<li>
1719<p>
1720<a href="git-reset.html">git-reset(1)</a> is about updating your branch, moving the tip
1721 in order to add or remove commits from the branch. This operation
1722 changes the commit history.
1723</p>
1724<div class="paragraph"><p><code>git reset</code> can also be used to restore the index, overlapping with
1725<code>git restore</code>.</p></div>
1726</li>
1727</ul></div>
1728</div>
Junio C Hamano9d971152012-12-19 00:43:111729</div>
1730</div>
1731<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:311732<h2 id="_low_level_commands_plumbing">Low-level commands (plumbing)</h2>
Junio C Hamanob19b4f02006-10-29 20:47:221733<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:211734<div class="paragraph"><p>Although Git includes its
Junio C Hamanob19b4f02006-10-29 20:47:221735own porcelain layer, its low-level commands are sufficient to support
1736development of alternative porcelains. Developers of such porcelains
Junio C Hamanoa28a9202012-06-21 07:08:231737might start by reading about <a href="git-update-index.html">git-update-index(1)</a> and
1738<a href="git-read-tree.html">git-read-tree(1)</a>.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:591739<div class="paragraph"><p>The interface (input, output, set of options and the semantics)
Junio C Hamano4ad294b2007-01-20 02:22:501740to these low-level commands are meant to be a lot more stable
1741than Porcelain level commands, because these commands are
1742primarily for scripted use. The interface to Porcelain commands
1743on the other hand are subject to change in order to improve the
Junio C Hamanoba4b9282008-07-06 05:20:311744end user experience.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:591745<div class="paragraph"><p>The following description divides
Junio C Hamano4ad294b2007-01-20 02:22:501746the low-level commands into commands that manipulate objects (in
Junio C Hamanob19b4f02006-10-29 20:47:221747the repository, index, and working tree), commands that interrogate and
1748compare objects, and commands that move objects and references between
Junio C Hamanoba4b9282008-07-06 05:20:311749repositories.</p></div>
Junio C Hamano9d971152012-12-19 00:43:111750<div class="sect2">
1751<h3 id="_manipulation_commands">Manipulation commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591752<div class="dlist"><dl>
1753<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231754<a href="git-apply.html">git-apply(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221755</dt>
1756<dd>
1757<p>
Junio C Hamano5706e0b2009-11-24 10:54:161758 Apply a patch to files and/or to the index.
Junio C Hamanob19b4f02006-10-29 20:47:221759</p>
1760</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591761<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231762<a href="git-checkout-index.html">git-checkout-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221763</dt>
1764<dd>
1765<p>
1766 Copy files from the index to the working tree.
1767</p>
1768</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591769<dt class="hdlist1">
Junio C Hamanoccb82522018-05-08 07:52:091770<a href="git-commit-graph.html">git-commit-graph(1)</a>
1771</dt>
1772<dd>
1773<p>
Junio C Hamano32a75272018-10-16 07:37:351774 Write and verify Git commit-graph files.
Junio C Hamanoccb82522018-05-08 07:52:091775</p>
1776</dd>
1777<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231778<a href="git-commit-tree.html">git-commit-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221779</dt>
1780<dd>
1781<p>
Junio C Hamano7c73c662007-01-19 00:37:501782 Create a new commit object.
Junio C Hamanob19b4f02006-10-29 20:47:221783</p>
1784</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591785<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231786<a href="git-hash-object.html">git-hash-object(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221787</dt>
1788<dd>
1789<p>
Junio C Hamano7c73c662007-01-19 00:37:501790 Compute object ID and optionally creates a blob from a file.
Junio C Hamanob19b4f02006-10-29 20:47:221791</p>
1792</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591793<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231794<a href="git-index-pack.html">git-index-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221795</dt>
1796<dd>
1797<p>
Junio C Hamano7c73c662007-01-19 00:37:501798 Build pack index file for an existing packed archive.
Junio C Hamanob19b4f02006-10-29 20:47:221799</p>
1800</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591801<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231802<a href="git-merge-file.html">git-merge-file(1)</a>
Junio C Hamano1de7bc62006-12-17 19:31:541803</dt>
1804<dd>
1805<p>
Junio C Hamano7c73c662007-01-19 00:37:501806 Run a three-way file merge.
Junio C Hamano1de7bc62006-12-17 19:31:541807</p>
1808</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591809<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231810<a href="git-merge-index.html">git-merge-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221811</dt>
1812<dd>
1813<p>
Junio C Hamano7c73c662007-01-19 00:37:501814 Run a merge for files needing merging.
Junio C Hamanob19b4f02006-10-29 20:47:221815</p>
1816</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591817<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231818<a href="git-mktag.html">git-mktag(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221819</dt>
1820<dd>
1821<p>
1822 Creates a tag object.
1823</p>
1824</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591825<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231826<a href="git-mktree.html">git-mktree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221827</dt>
1828<dd>
1829<p>
1830 Build a tree-object from ls-tree formatted text.
1831</p>
1832</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591833<dt class="hdlist1">
Junio C Hamano980e61e2018-09-17 22:45:521834<a href="git-multi-pack-index.html">git-multi-pack-index(1)</a>
1835</dt>
1836<dd>
1837<p>
1838 Write and verify multi-pack-indexes.
1839</p>
1840</dd>
1841<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231842<a href="git-pack-objects.html">git-pack-objects(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221843</dt>
1844<dd>
1845<p>
Junio C Hamano7c73c662007-01-19 00:37:501846 Create a packed archive of objects.
Junio C Hamanob19b4f02006-10-29 20:47:221847</p>
1848</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591849<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231850<a href="git-prune-packed.html">git-prune-packed(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221851</dt>
1852<dd>
1853<p>
1854 Remove extra objects that are already in pack files.
1855</p>
1856</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591857<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231858<a href="git-read-tree.html">git-read-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221859</dt>
1860<dd>
1861<p>
1862 Reads tree information into the index.
1863</p>
1864</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591865<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231866<a href="git-symbolic-ref.html">git-symbolic-ref(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221867</dt>
1868<dd>
1869<p>
Junio C Hamano4eb2b9c2012-11-15 21:12:291870 Read, modify and delete symbolic refs.
Junio C Hamanob19b4f02006-10-29 20:47:221871</p>
1872</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591873<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231874<a href="git-unpack-objects.html">git-unpack-objects(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221875</dt>
1876<dd>
1877<p>
Junio C Hamano7c73c662007-01-19 00:37:501878 Unpack objects from a packed archive.
Junio C Hamanob19b4f02006-10-29 20:47:221879</p>
1880</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591881<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231882<a href="git-update-index.html">git-update-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221883</dt>
1884<dd>
1885<p>
Junio C Hamano7c73c662007-01-19 00:37:501886 Register file contents in the working tree to the index.
Junio C Hamanob19b4f02006-10-29 20:47:221887</p>
1888</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591889<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231890<a href="git-update-ref.html">git-update-ref(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501891</dt>
1892<dd>
1893<p>
1894 Update the object name stored in a ref safely.
1895</p>
1896</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591897<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231898<a href="git-write-tree.html">git-write-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221899</dt>
1900<dd>
1901<p>
Junio C Hamano7c73c662007-01-19 00:37:501902 Create a tree object from the current index.
Junio C Hamanob19b4f02006-10-29 20:47:221903</p>
1904</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311905</dl></div>
Junio C Hamano9d971152012-12-19 00:43:111906</div>
1907<div class="sect2">
1908<h3 id="_interrogation_commands">Interrogation commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591909<div class="dlist"><dl>
1910<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231911<a href="git-cat-file.html">git-cat-file(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221912</dt>
1913<dd>
1914<p>
Junio C Hamano1de75722009-03-26 08:39:381915 Provide content or type and size information for repository objects.
Junio C Hamanob19b4f02006-10-29 20:47:221916</p>
1917</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591918<dt class="hdlist1">
Junio C Hamanoa4df8ed2018-10-26 06:37:131919<a href="git-cherry.html">git-cherry(1)</a>
1920</dt>
1921<dd>
1922<p>
1923 Find commits yet to be applied to upstream.
1924</p>
1925</dd>
1926<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231927<a href="git-diff-files.html">git-diff-files(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221928</dt>
1929<dd>
1930<p>
1931 Compares files in the working tree and the index.
1932</p>
1933</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591934<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231935<a href="git-diff-index.html">git-diff-index(1)</a>
Junio C Hamano7c73c662007-01-19 00:37:501936</dt>
1937<dd>
1938<p>
Junio C Hamano7e590a12013-06-02 23:46:521939 Compare a tree to the working tree or index.
Junio C Hamano7c73c662007-01-19 00:37:501940</p>
1941</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591942<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231943<a href="git-diff-tree.html">git-diff-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221944</dt>
1945<dd>
1946<p>
1947 Compares the content and mode of blobs found via two tree objects.
1948</p>
1949</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591950<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231951<a href="git-for-each-ref.html">git-for-each-ref(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221952</dt>
1953<dd>
1954<p>
1955 Output information on each ref.
1956</p>
1957</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591958<dt class="hdlist1">
Junio C Hamanoa4df8ed2018-10-26 06:37:131959<a href="git-get-tar-commit-id.html">git-get-tar-commit-id(1)</a>
1960</dt>
1961<dd>
1962<p>
1963 Extract commit ID from an archive created using git-archive.
1964</p>
1965</dd>
1966<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231967<a href="git-ls-files.html">git-ls-files(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221968</dt>
1969<dd>
1970<p>
Junio C Hamano7c73c662007-01-19 00:37:501971 Show information about files in the index and the working tree.
Junio C Hamanob19b4f02006-10-29 20:47:221972</p>
1973</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591974<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231975<a href="git-ls-remote.html">git-ls-remote(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501976</dt>
1977<dd>
1978<p>
1979 List references in a remote repository.
1980</p>
1981</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591982<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231983<a href="git-ls-tree.html">git-ls-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221984</dt>
1985<dd>
1986<p>
Junio C Hamano7c73c662007-01-19 00:37:501987 List the contents of a tree object.
Junio C Hamanob19b4f02006-10-29 20:47:221988</p>
1989</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591990<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231991<a href="git-merge-base.html">git-merge-base(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221992</dt>
1993<dd>
1994<p>
Junio C Hamano7c73c662007-01-19 00:37:501995 Find as good common ancestors as possible for a merge.
Junio C Hamanob19b4f02006-10-29 20:47:221996</p>
1997</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591998<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231999<a href="git-name-rev.html">git-name-rev(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222000</dt>
2001<dd>
2002<p>
2003 Find symbolic names for given revs.
2004</p>
2005</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592006<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232007<a href="git-pack-redundant.html">git-pack-redundant(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222008</dt>
2009<dd>
2010<p>
2011 Find redundant pack files.
2012</p>
2013</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592014<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232015<a href="git-rev-list.html">git-rev-list(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222016</dt>
2017<dd>
2018<p>
2019 Lists commit objects in reverse chronological order.
2020</p>
2021</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592022<dt class="hdlist1">
Junio C Hamanoa4df8ed2018-10-26 06:37:132023<a href="git-rev-parse.html">git-rev-parse(1)</a>
2024</dt>
2025<dd>
2026<p>
2027 Pick out and massage parameters.
2028</p>
2029</dd>
2030<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232031<a href="git-show-index.html">git-show-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222032</dt>
2033<dd>
2034<p>
Junio C Hamano7c73c662007-01-19 00:37:502035 Show packed archive index.
Junio C Hamanob19b4f02006-10-29 20:47:222036</p>
2037</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592038<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232039<a href="git-show-ref.html">git-show-ref(1)</a>
Junio C Hamanod8c9d432006-11-07 07:19:132040</dt>
2041<dd>
2042<p>
2043 List references in a local repository.
2044</p>
2045</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592046<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232047<a href="git-unpack-file.html">git-unpack-file(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222048</dt>
2049<dd>
2050<p>
Junio C Hamano68cf15a2010-11-06 01:01:592051 Creates a temporary file with a blob&#8217;s contents.
Junio C Hamanob19b4f02006-10-29 20:47:222052</p>
2053</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592054<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232055<a href="git-var.html">git-var(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222056</dt>
2057<dd>
2058<p>
Junio C Hamano076ffcc2013-02-06 05:13:212059 Show a Git logical variable.
Junio C Hamanob19b4f02006-10-29 20:47:222060</p>
2061</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592062<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232063<a href="git-verify-pack.html">git-verify-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222064</dt>
2065<dd>
2066<p>
Junio C Hamano076ffcc2013-02-06 05:13:212067 Validate packed Git archive files.
Junio C Hamanob19b4f02006-10-29 20:47:222068</p>
2069</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312070</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:592071<div class="paragraph"><p>In general, the interrogate commands do not touch the files in
Junio C Hamanoba4b9282008-07-06 05:20:312072the working tree.</p></div>
Junio C Hamano9d971152012-12-19 00:43:112073</div>
2074<div class="sect2">
Junio C Hamano8ef91f32019-12-01 22:58:272075<h3 id="_syncing_repositories">Syncing repositories</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592076<div class="dlist"><dl>
2077<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232078<a href="git-daemon.html">git-daemon(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502079</dt>
2080<dd>
2081<p>
Junio C Hamano076ffcc2013-02-06 05:13:212082 A really simple server for Git repositories.
Junio C Hamano4ad294b2007-01-20 02:22:502083</p>
2084</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592085<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232086<a href="git-fetch-pack.html">git-fetch-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222087</dt>
2088<dd>
2089<p>
Junio C Hamano7c73c662007-01-19 00:37:502090 Receive missing objects from another repository.
Junio C Hamanob19b4f02006-10-29 20:47:222091</p>
2092</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592093<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232094<a href="git-http-backend.html">git-http-backend(1)</a>
Junio C Hamano096dde22009-12-26 23:14:112095</dt>
2096<dd>
2097<p>
2098 Server side implementation of Git over HTTP.
2099</p>
2100</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592101<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232102<a href="git-send-pack.html">git-send-pack(1)</a>
Junio C Hamano7c73c662007-01-19 00:37:502103</dt>
2104<dd>
2105<p>
Junio C Hamano076ffcc2013-02-06 05:13:212106 Push objects over Git protocol to another repository.
Junio C Hamanob19b4f02006-10-29 20:47:222107</p>
2108</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592109<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232110<a href="git-update-server-info.html">git-update-server-info(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222111</dt>
2112<dd>
2113<p>
Junio C Hamano7c73c662007-01-19 00:37:502114 Update auxiliary info file to help dumb servers.
Junio C Hamanob19b4f02006-10-29 20:47:222115</p>
2116</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312117</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:592118<div class="paragraph"><p>The following are helper commands used by the above; end users
Junio C Hamanoba4b9282008-07-06 05:20:312119typically do not use them directly.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592120<div class="dlist"><dl>
2121<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232122<a href="git-http-fetch.html">git-http-fetch(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502123</dt>
2124<dd>
2125<p>
Junio C Hamano076ffcc2013-02-06 05:13:212126 Download from a remote Git repository via HTTP.
Junio C Hamano4ad294b2007-01-20 02:22:502127</p>
2128</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592129<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232130<a href="git-http-push.html">git-http-push(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502131</dt>
2132<dd>
2133<p>
2134 Push objects over HTTP/DAV to another repository.
2135</p>
2136</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592137<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232138<a href="git-parse-remote.html">git-parse-remote(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502139</dt>
2140<dd>
2141<p>
2142 Routines to help parsing remote repository access parameters.
2143</p>
2144</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592145<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232146<a href="git-receive-pack.html">git-receive-pack(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502147</dt>
2148<dd>
2149<p>
2150 Receive what is pushed into the repository.
2151</p>
2152</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592153<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232154<a href="git-shell.html">git-shell(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502155</dt>
2156<dd>
2157<p>
Junio C Hamano3b4609d2010-09-30 00:04:342158 Restricted login shell for Git-only SSH access.
Junio C Hamano4ad294b2007-01-20 02:22:502159</p>
2160</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592161<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232162<a href="git-upload-archive.html">git-upload-archive(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222163</dt>
2164<dd>
2165<p>
Junio C Hamano7c73c662007-01-19 00:37:502166 Send archive back to git-archive.
Junio C Hamanob19b4f02006-10-29 20:47:222167</p>
2168</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592169<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232170<a href="git-upload-pack.html">git-upload-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222171</dt>
2172<dd>
2173<p>
Junio C Hamano7c73c662007-01-19 00:37:502174 Send objects packed back to git-fetch-pack.
Junio C Hamanob19b4f02006-10-29 20:47:222175</p>
2176</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312177</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112178</div>
2179<div class="sect2">
2180<h3 id="_internal_helper_commands">Internal helper commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592181<div class="paragraph"><p>These are internal helper commands used by other commands; end
Junio C Hamanoba4b9282008-07-06 05:20:312182users typically do not use them directly.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592183<div class="dlist"><dl>
2184<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232185<a href="git-check-attr.html">git-check-attr(1)</a>
Junio C Hamanoe90436a2007-04-22 07:22:132186</dt>
2187<dd>
2188<p>
Junio C Hamano9bd39c42008-11-13 01:54:442189 Display gitattributes information.
Junio C Hamanoe90436a2007-04-22 07:22:132190</p>
2191</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592192<dt class="hdlist1">
Junio C Hamano36d52292013-01-25 21:32:362193<a href="git-check-ignore.html">git-check-ignore(1)</a>
2194</dt>
2195<dd>
2196<p>
2197 Debug gitignore / exclude files.
2198</p>
2199</dd>
2200<dt class="hdlist1">
Junio C Hamano58f587a2013-07-22 19:20:592201<a href="git-check-mailmap.html">git-check-mailmap(1)</a>
2202</dt>
2203<dd>
2204<p>
2205 Show canonical names and email addresses of contacts.
2206</p>
2207</dd>
2208<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232209<a href="git-check-ref-format.html">git-check-ref-format(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502210</dt>
2211<dd>
2212<p>
Junio C Hamano1de75722009-03-26 08:39:382213 Ensures that a reference name is well formed.
Junio C Hamano4ad294b2007-01-20 02:22:502214</p>
2215</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592216<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232217<a href="git-column.html">git-column(1)</a>
Junio C Hamano22700fb2012-05-03 23:07:252218</dt>
2219<dd>
2220<p>
2221 Display data in columns.
2222</p>
2223</dd>
2224<dt class="hdlist1">
Junio C Hamano62e79372012-08-08 22:53:352225<a href="git-credential.html">git-credential(1)</a>
2226</dt>
2227<dd>
2228<p>
2229 Retrieve and store user credentials.
2230</p>
2231</dd>
2232<dt class="hdlist1">
Junio C Hamanod0316112012-08-22 19:55:292233<a href="git-credential-cache.html">git-credential-cache(1)</a>
2234</dt>
2235<dd>
2236<p>
2237 Helper to temporarily store passwords in memory.
2238</p>
2239</dd>
2240<dt class="hdlist1">
2241<a href="git-credential-store.html">git-credential-store(1)</a>
2242</dt>
2243<dd>
2244<p>
2245 Helper to store credentials on disk.
2246</p>
2247</dd>
2248<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232249<a href="git-fmt-merge-msg.html">git-fmt-merge-msg(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502250</dt>
2251<dd>
2252<p>
2253 Produce a merge commit message.
2254</p>
2255</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592256<dt class="hdlist1">
Junio C Hamano4c43d652014-10-20 21:14:292257<a href="git-interpret-trailers.html">git-interpret-trailers(1)</a>
2258</dt>
2259<dd>
2260<p>
Junio C Hamanob5513772019-04-22 03:38:392261 Add or parse structured information in commit messages.
Junio C Hamano4c43d652014-10-20 21:14:292262</p>
2263</dd>
2264<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232265<a href="git-mailinfo.html">git-mailinfo(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502266</dt>
2267<dd>
2268<p>
2269 Extracts patch and authorship from a single e-mail message.
2270</p>
2271</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592272<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232273<a href="git-mailsplit.html">git-mailsplit(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502274</dt>
2275<dd>
2276<p>
2277 Simple UNIX mbox splitter program.
2278</p>
2279</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592280<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232281<a href="git-merge-one-file.html">git-merge-one-file(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502282</dt>
2283<dd>
2284<p>
2285 The standard helper program to use with git-merge-index.
2286</p>
2287</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592288<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232289<a href="git-patch-id.html">git-patch-id(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502290</dt>
2291<dd>
2292<p>
2293 Compute unique ID for a patch.
2294</p>
2295</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592296<dt class="hdlist1">
Junio C Hamanod0316112012-08-22 19:55:292297<a href="git-sh-i18n.html">git-sh-i18n(1)</a>
2298</dt>
2299<dd>
2300<p>
2301 Git&#8217;s i18n setup code for shell scripts.
2302</p>
2303</dd>
2304<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232305<a href="git-sh-setup.html">git-sh-setup(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502306</dt>
2307<dd>
2308<p>
Junio C Hamano076ffcc2013-02-06 05:13:212309 Common Git shell script setup code.
Junio C Hamano4ad294b2007-01-20 02:22:502310</p>
2311</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592312<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232313<a href="git-stripspace.html">git-stripspace(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502314</dt>
2315<dd>
2316<p>
Junio C Hamano0df92712011-12-21 22:30:442317 Remove unnecessary whitespace.
Junio C Hamano4ad294b2007-01-20 02:22:502318</p>
2319</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312320</dl></div>
Junio C Hamanob19b4f02006-10-29 20:47:222321</div>
Junio C Hamano9d971152012-12-19 00:43:112322</div>
2323</div>
2324<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312325<h2 id="_configuration_mechanism">Configuration Mechanism</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232326<div class="sectionbody">
Junio C Hamano2da4ac42013-02-19 00:41:172327<div class="paragraph"><p>Git uses a simple text format to store customizations that are per
2328repository and are per user. Such a configuration file may look
2329like this:</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232330<div class="listingblock">
2331<div class="content">
Junio C Hamanoac12f0e2014-09-19 22:32:512332<pre><code>#
Junio C Hamano1a4e8412005-12-27 08:17:232333# A '#' or ';' character indicates a comment.
2334#
2335
2336; core variables
2337[core]
2338 ; Don't trust file modes
2339 filemode = false
2340
2341; user identity
2342[user]
2343 name = "Junio C Hamano"
Junio C Hamanoac12f0e2014-09-19 22:32:512344 email = "gitster@pobox.com"</code></pre>
Junio C Hamano1a4e8412005-12-27 08:17:232345</div></div>
Junio C Hamano68cf15a2010-11-06 01:01:592346<div class="paragraph"><p>Various commands read from the configuration file and adjust
Junio C Hamanoa28a9202012-06-21 07:08:232347their operation accordingly. See <a href="git-config.html">git-config(1)</a> for a
Junio C Hamano2da4ac42013-02-19 00:41:172348list and more details about the configuration mechanism.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232349</div>
Junio C Hamano9d971152012-12-19 00:43:112350</div>
2351<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312352<h2 id="_identifier_terminology">Identifier Terminology</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232353<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:592354<div class="dlist"><dl>
2355<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232356&lt;object&gt;
2357</dt>
2358<dd>
2359<p>
2360 Indicates the object name for any type of object.
2361</p>
2362</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592363<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232364&lt;blob&gt;
2365</dt>
2366<dd>
2367<p>
2368 Indicates a blob object name.
2369</p>
2370</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592371<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232372&lt;tree&gt;
2373</dt>
2374<dd>
2375<p>
2376 Indicates a tree object name.
2377</p>
2378</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592379<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232380&lt;commit&gt;
2381</dt>
2382<dd>
2383<p>
2384 Indicates a commit object name.
2385</p>
2386</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592387<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232388&lt;tree-ish&gt;
2389</dt>
2390<dd>
2391<p>
2392 Indicates a tree, commit or tag object name. A
2393 command that takes a &lt;tree-ish&gt; argument ultimately wants to
2394 operate on a &lt;tree&gt; object but automatically dereferences
2395 &lt;commit&gt; and &lt;tag&gt; objects that point at a &lt;tree&gt;.
2396</p>
2397</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592398<dt class="hdlist1">
Junio C Hamano60f8aa82007-03-06 09:58:262399&lt;commit-ish&gt;
2400</dt>
2401<dd>
2402<p>
2403 Indicates a commit or tag object name. A
2404 command that takes a &lt;commit-ish&gt; argument ultimately wants to
2405 operate on a &lt;commit&gt; object but automatically dereferences
2406 &lt;tag&gt; objects that point at a &lt;commit&gt;.
2407</p>
2408</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592409<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232410&lt;type&gt;
2411</dt>
2412<dd>
2413<p>
2414 Indicates that an object type is required.
Junio C Hamanoac12f0e2014-09-19 22:32:512415 Currently one of: <code>blob</code>, <code>tree</code>, <code>commit</code>, or <code>tag</code>.
Junio C Hamano1a4e8412005-12-27 08:17:232416</p>
2417</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592418<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232419&lt;file&gt;
2420</dt>
2421<dd>
2422<p>
2423 Indicates a filename - almost always relative to the
Junio C Hamanoac12f0e2014-09-19 22:32:512424 root of the tree structure <code>GIT_INDEX_FILE</code> describes.
Junio C Hamano1a4e8412005-12-27 08:17:232425</p>
2426</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312427</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:232428</div>
Junio C Hamano9d971152012-12-19 00:43:112429</div>
2430<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312431<h2 id="_symbolic_identifiers">Symbolic Identifiers</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232432<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:212433<div class="paragraph"><p>Any Git command accepting any &lt;object&gt; can also use the following
Junio C Hamanoba4b9282008-07-06 05:20:312434symbolic notation:</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592435<div class="dlist"><dl>
2436<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232437HEAD
2438</dt>
2439<dd>
2440<p>
Junio C Hamano360e3a12011-07-13 23:51:562441 indicates the head of the current branch.
Junio C Hamano1a4e8412005-12-27 08:17:232442</p>
2443</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592444<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232445&lt;tag&gt;
2446</dt>
2447<dd>
2448<p>
2449 a valid tag <em>name</em>
Junio C Hamanoac12f0e2014-09-19 22:32:512450 (i.e. a <code>refs/tags/&lt;tag&gt;</code> reference).
Junio C Hamano1a4e8412005-12-27 08:17:232451</p>
2452</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592453<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232454&lt;head&gt;
2455</dt>
2456<dd>
2457<p>
2458 a valid head <em>name</em>
Junio C Hamanoac12f0e2014-09-19 22:32:512459 (i.e. a <code>refs/heads/&lt;head&gt;</code> reference).
Junio C Hamano1a4e8412005-12-27 08:17:232460</p>
2461</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312462</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:592463<div class="paragraph"><p>For a more complete list of ways to spell object names, see
Junio C Hamanoa28a9202012-06-21 07:08:232464"SPECIFYING REVISIONS" section in <a href="gitrevisions.html">gitrevisions(7)</a>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232465</div>
Junio C Hamano9d971152012-12-19 00:43:112466</div>
2467<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312468<h2 id="_file_directory_structure">File/Directory Structure</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232469<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:232470<div class="paragraph"><p>Please see the <a href="gitrepository-layout.html">gitrepository-layout(5)</a> document.</p></div>
2471<div class="paragraph"><p>Read <a href="githooks.html">githooks(5)</a> for more details about each hook.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592472<div class="paragraph"><p>Higher level SCMs may provide and manage additional information in the
Junio C Hamanoac12f0e2014-09-19 22:32:512473<code>$GIT_DIR</code>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232474</div>
Junio C Hamano9d971152012-12-19 00:43:112475</div>
2476<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312477<h2 id="_terminology">Terminology</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232478<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:232479<div class="paragraph"><p>Please see <a href="gitglossary.html">gitglossary(7)</a>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232480</div>
Junio C Hamano9d971152012-12-19 00:43:112481</div>
2482<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312483<h2 id="_environment_variables">Environment Variables</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232484<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:212485<div class="paragraph"><p>Various Git commands use the following environment variables:</p></div>
Junio C Hamano9d971152012-12-19 00:43:112486<div class="sect2">
Junio C Hamano076ffcc2013-02-06 05:13:212487<h3 id="_the_git_repository">The Git Repository</h3>
2488<div class="paragraph"><p>These environment variables apply to <em>all</em> core Git commands. Nb: it
Junio C Hamano1a4e8412005-12-27 08:17:232489is worth noting that they may be used/overridden by SCMS sitting above
Junio C Hamanod7ed4042015-08-03 19:43:002490Git so take care if using a foreign front-end.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592491<div class="dlist"><dl>
2492<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052493<code>GIT_INDEX_FILE</code>
Junio C Hamano1a4e8412005-12-27 08:17:232494</dt>
2495<dd>
2496<p>
2497 This environment allows the specification of an alternate
Junio C Hamanoac12f0e2014-09-19 22:32:512498 index file. If not specified, the default of <code>$GIT_DIR/index</code>
Junio C Hamano1a4e8412005-12-27 08:17:232499 is used.
2500</p>
2501</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592502<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052503<code>GIT_INDEX_VERSION</code>
Junio C Hamano81703b22014-03-14 22:00:272504</dt>
2505<dd>
2506<p>
2507 This environment variable allows the specification of an index
2508 version for new repositories. It won&#8217;t affect existing index
Junio C Hamanoef57d1e2015-03-25 21:23:002509 files. By default index file version 2 or 3 is used. See
2510 <a href="git-update-index.html">git-update-index(1)</a> for more information.
Junio C Hamano81703b22014-03-14 22:00:272511</p>
2512</dd>
2513<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052514<code>GIT_OBJECT_DIRECTORY</code>
Junio C Hamano1a4e8412005-12-27 08:17:232515</dt>
2516<dd>
2517<p>
2518 If the object storage directory is specified via this
2519 environment variable then the sha1 directories are created
Junio C Hamanoac12f0e2014-09-19 22:32:512520 underneath - otherwise the default <code>$GIT_DIR/objects</code>
Junio C Hamano1a4e8412005-12-27 08:17:232521 directory is used.
2522</p>
2523</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592524<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052525<code>GIT_ALTERNATE_OBJECT_DIRECTORIES</code>
Junio C Hamano1a4e8412005-12-27 08:17:232526</dt>
2527<dd>
2528<p>
Junio C Hamano076ffcc2013-02-06 05:13:212529 Due to the immutable nature of Git objects, old objects can be
Junio C Hamano1a4e8412005-12-27 08:17:232530 archived into shared, read-only directories. This variable
Junio C Hamano05bf9c52008-07-03 09:21:582531 specifies a ":" separated (on Windows ";" separated) list
Junio C Hamano076ffcc2013-02-06 05:13:212532 of Git object directories which can be used to search for Git
Junio C Hamano05bf9c52008-07-03 09:21:582533 objects. New objects will not be written to these directories.
Junio C Hamano1a4e8412005-12-27 08:17:232534</p>
Junio C Hamano94d00a52018-10-30 07:34:402535<div class="paragraph"><p>Entries that begin with <code>"</code> (double-quote) will be interpreted
Junio C Hamano9ed6ab22016-12-21 23:24:112536as C-style quoted paths, removing leading and trailing
2537double-quotes and respecting backslash escapes. E.g., the value
Junio C Hamano94d00a52018-10-30 07:34:402538<code>"path-with-\"-and-:-in-it":vanilla-path</code> has two paths:
2539<code>path-with-"-and-:-in-it</code> and <code>vanilla-path</code>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232540</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592541<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052542<code>GIT_DIR</code>
Junio C Hamano1a4e8412005-12-27 08:17:232543</dt>
2544<dd>
2545<p>
Junio C Hamano042f2142016-06-27 18:05:052546 If the <code>GIT_DIR</code> environment variable is set then it
Junio C Hamanoac12f0e2014-09-19 22:32:512547 specifies a path to use instead of the default <code>.git</code>
Junio C Hamano1a4e8412005-12-27 08:17:232548 for the base of the repository.
Junio C Hamano92d80372016-07-13 22:00:052549 The <code>--git-dir</code> command-line option also sets this value.
Junio C Hamano1a4e8412005-12-27 08:17:232550</p>
2551</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592552<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052553<code>GIT_WORK_TREE</code>
Junio C Hamanod526ba92007-07-02 00:17:422554</dt>
2555<dd>
2556<p>
Junio C Hamanof1f5a7b2013-06-11 22:23:522557 Set the path to the root of the working tree.
Junio C Hamano92d80372016-07-13 22:00:052558 This can also be controlled by the <code>--work-tree</code> command-line
Junio C Hamanod526ba92007-07-02 00:17:422559 option and the core.worktree configuration variable.
2560</p>
2561</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592562<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052563<code>GIT_NAMESPACE</code>
Junio C Hamanof7279012011-08-18 06:13:132564</dt>
2565<dd>
2566<p>
Junio C Hamano076ffcc2013-02-06 05:13:212567 Set the Git namespace; see <a href="gitnamespaces.html">gitnamespaces(7)</a> for details.
Junio C Hamano92d80372016-07-13 22:00:052568 The <code>--namespace</code> command-line option also sets this value.
Junio C Hamanof7279012011-08-18 06:13:132569</p>
2570</dd>
2571<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052572<code>GIT_CEILING_DIRECTORIES</code>
Junio C Hamano15048272008-07-07 22:10:482573</dt>
2574<dd>
2575<p>
Junio C Hamano68061622013-03-01 22:13:372576 This should be a colon-separated list of absolute paths. If
2577 set, it is a list of directories that Git should not chdir up
2578 into while looking for a repository directory (useful for
2579 excluding slow-loading network directories). It will not
2580 exclude the current working directory or a GIT_DIR set on the
2581 command line or in the environment. Normally, Git has to read
2582 the entries in this list and resolve any symlink that
2583 might be present in order to compare them with the current
2584 directory. However, if even this access is slow, you
2585 can add an empty entry to the list to tell Git that the
2586 subsequent entries are not symlinks and needn&#8217;t be resolved;
2587 e.g.,
Junio C Hamano042f2142016-06-27 18:05:052588 <code>GIT_CEILING_DIRECTORIES=/maybe/symlink::/very/slow/non/symlink</code>.
Junio C Hamano15048272008-07-07 22:10:482589</p>
2590</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592591<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052592<code>GIT_DISCOVERY_ACROSS_FILESYSTEM</code>
Junio C Hamanocc7636a2010-05-21 14:57:532593</dt>
2594<dd>
2595<p>
2596 When run in a directory that does not have ".git" repository
Junio C Hamano076ffcc2013-02-06 05:13:212597 directory, Git tries to find such a directory in the parent
Junio C Hamanocc7636a2010-05-21 14:57:532598 directories to find the top of the working tree, but by default it
2599 does not cross filesystem boundaries. This environment variable
Junio C Hamano076ffcc2013-02-06 05:13:212600 can be set to true to tell Git not to stop at filesystem
Junio C Hamano042f2142016-06-27 18:05:052601 boundaries. Like <code>GIT_CEILING_DIRECTORIES</code>, this will not affect
2602 an explicit repository directory set via <code>GIT_DIR</code> or on the
Junio C Hamanocc7636a2010-05-21 14:57:532603 command line.
2604</p>
2605</dd>
Junio C Hamano4cc4a842015-05-11 22:41:022606<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052607<code>GIT_COMMON_DIR</code>
Junio C Hamano4cc4a842015-05-11 22:41:022608</dt>
2609<dd>
2610<p>
2611 If this variable is set to a path, non-worktree files that are
2612 normally in $GIT_DIR will be taken from this path
2613 instead. Worktree-specific files such as HEAD or index are
2614 taken from $GIT_DIR. See <a href="gitrepository-layout.html">gitrepository-layout(5)</a> and
Junio C Hamano1e4fff22015-07-17 22:44:482615 <a href="git-worktree.html">git-worktree(1)</a> for
Junio C Hamano4cc4a842015-05-11 22:41:022616 details. This variable has lower precedence than other path
2617 variables such as GIT_INDEX_FILE, GIT_OBJECT_DIRECTORY&#8230;
2618</p>
2619</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312620</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112621</div>
2622<div class="sect2">
Junio C Hamano076ffcc2013-02-06 05:13:212623<h3 id="_git_commits">Git Commits</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592624<div class="dlist"><dl>
2625<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052626<code>GIT_AUTHOR_NAME</code>
Junio C Hamano1a4e8412005-12-27 08:17:232627</dt>
Junio C Hamanobee061d2020-01-30 23:21:182628<dd>
2629<p>
2630 The human-readable name used in the author identity when creating commit or
2631 tag objects, or when writing reflogs. Overrides the <code>user.name</code> and
2632 <code>author.name</code> configuration settings.
2633</p>
2634</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592635<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052636<code>GIT_AUTHOR_EMAIL</code>
Junio C Hamano1a4e8412005-12-27 08:17:232637</dt>
Junio C Hamanobee061d2020-01-30 23:21:182638<dd>
2639<p>
2640 The email address used in the author identity when creating commit or
2641 tag objects, or when writing reflogs. Overrides the <code>user.email</code> and
2642 <code>author.email</code> configuration settings.
2643</p>
2644</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592645<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052646<code>GIT_AUTHOR_DATE</code>
Junio C Hamano1a4e8412005-12-27 08:17:232647</dt>
Junio C Hamanobee061d2020-01-30 23:21:182648<dd>
2649<p>
2650 The date used for the author identity when creating commit or tag objects, or
2651 when writing reflogs. See <a href="git-commit.html">git-commit(1)</a> for valid formats.
2652</p>
2653</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592654<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052655<code>GIT_COMMITTER_NAME</code>
Junio C Hamano1a4e8412005-12-27 08:17:232656</dt>
Junio C Hamanobee061d2020-01-30 23:21:182657<dd>
2658<p>
2659 The human-readable name used in the committer identity when creating commit or
2660 tag objects, or when writing reflogs. Overrides the <code>user.name</code> and
2661 <code>committer.name</code> configuration settings.
2662</p>
2663</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592664<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052665<code>GIT_COMMITTER_EMAIL</code>
Junio C Hamano1a4e8412005-12-27 08:17:232666</dt>
Junio C Hamanobee061d2020-01-30 23:21:182667<dd>
2668<p>
2669 The email address used in the author identity when creating commit or
2670 tag objects, or when writing reflogs. Overrides the <code>user.email</code> and
2671 <code>committer.email</code> configuration settings.
2672</p>
2673</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592674<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052675<code>GIT_COMMITTER_DATE</code>
Junio C Hamano469d60e2007-04-29 18:30:342676</dt>
Junio C Hamanobee061d2020-01-30 23:21:182677<dd>
2678<p>
2679 The date used for the committer identity when creating commit or tag objects, or
2680 when writing reflogs. See <a href="git-commit.html">git-commit(1)</a> for valid formats.
2681</p>
2682</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592683<dt class="hdlist1">
Junio C Hamanobee061d2020-01-30 23:21:182684<code>EMAIL</code>
Junio C Hamano469d60e2007-04-29 18:30:342685</dt>
Junio C Hamano1a4e8412005-12-27 08:17:232686<dd>
2687<p>
Junio C Hamanobee061d2020-01-30 23:21:182688 The email address used in the author and committer identities if no other
2689 relevant environment variable or configuration setting has been set.
Junio C Hamano1a4e8412005-12-27 08:17:232690</p>
2691</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312692</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112693</div>
2694<div class="sect2">
Junio C Hamano076ffcc2013-02-06 05:13:212695<h3 id="_git_diffs">Git Diffs</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592696<div class="dlist"><dl>
2697<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052698<code>GIT_DIFF_OPTS</code>
Junio C Hamano1a4e8412005-12-27 08:17:232699</dt>
Junio C Hamano1c437122006-11-28 02:22:252700<dd>
2701<p>
2702 Only valid setting is "--unified=??" or "-u??" to set the
2703 number of context lines shown when a unified diff is created.
2704 This takes precedence over any "-U" or "--unified" option
Junio C Hamano076ffcc2013-02-06 05:13:212705 value passed on the Git diff command line.
Junio C Hamano1c437122006-11-28 02:22:252706</p>
2707</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592708<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052709<code>GIT_EXTERNAL_DIFF</code>
Junio C Hamano1a4e8412005-12-27 08:17:232710</dt>
2711<dd>
2712<p>
Junio C Hamano042f2142016-06-27 18:05:052713 When the environment variable <code>GIT_EXTERNAL_DIFF</code> is set, the
Junio C Hamano1c437122006-11-28 02:22:252714 program named by it is called, instead of the diff invocation
2715 described above. For a path that is added, removed, or modified,
Junio C Hamano042f2142016-06-27 18:05:052716 <code>GIT_EXTERNAL_DIFF</code> is called with 7 parameters:
Junio C Hamano1a4e8412005-12-27 08:17:232717</p>
Junio C Hamano1c437122006-11-28 02:22:252718<div class="literalblock">
2719<div class="content">
Junio C Hamanoac12f0e2014-09-19 22:32:512720<pre><code>path old-file old-hex old-mode new-file new-hex new-mode</code></pre>
Junio C Hamano1c437122006-11-28 02:22:252721</div></div>
Junio C Hamano68cf15a2010-11-06 01:01:592722<div class="paragraph"><p>where:</p></div>
2723</dd>
2724<dt class="hdlist1">
Junio C Hamano1c437122006-11-28 02:22:252725&lt;old|new&gt;-file
Junio C Hamano68cf15a2010-11-06 01:01:592726</dt>
2727<dd>
2728<p>
Junio C Hamano1c437122006-11-28 02:22:252729are files GIT_EXTERNAL_DIFF can use to read the
2730 contents of &lt;old|new&gt;,
Junio C Hamano68cf15a2010-11-06 01:01:592731</p>
2732</dd>
2733<dt class="hdlist1">
Junio C Hamano1c437122006-11-28 02:22:252734&lt;old|new&gt;-hex
Junio C Hamano68cf15a2010-11-06 01:01:592735</dt>
2736<dd>
2737<p>
Junio C Hamanoe3f080d2013-04-22 02:27:132738are the 40-hexdigit SHA-1 hashes,
Junio C Hamano68cf15a2010-11-06 01:01:592739</p>
2740</dd>
2741<dt class="hdlist1">
Junio C Hamano1c437122006-11-28 02:22:252742&lt;old|new&gt;-mode
Junio C Hamano68cf15a2010-11-06 01:01:592743</dt>
2744<dd>
2745<p>
Junio C Hamano1c437122006-11-28 02:22:252746are the octal representation of the file modes.
Junio C Hamano68cf15a2010-11-06 01:01:592747</p>
Junio C Hamanof75a9402011-04-14 23:39:232748<div class="paragraph"><p>The file parameters can point at the user&#8217;s working file
Junio C Hamanoac12f0e2014-09-19 22:32:512749(e.g. <code>new-file</code> in "git-diff-files"), <code>/dev/null</code> (e.g. <code>old-file</code>
2750when a new file is added), or a temporary file (e.g. <code>old-file</code> in the
Junio C Hamano042f2142016-06-27 18:05:052751index). <code>GIT_EXTERNAL_DIFF</code> should not worry about unlinking the
2752temporary file --- it is removed when <code>GIT_EXTERNAL_DIFF</code> exits.</p></div>
2753<div class="paragraph"><p>For a path that is unmerged, <code>GIT_EXTERNAL_DIFF</code> is called with 1
Junio C Hamanoba4b9282008-07-06 05:20:312754parameter, &lt;path&gt;.</p></div>
Junio C Hamano042f2142016-06-27 18:05:052755<div class="paragraph"><p>For each path <code>GIT_EXTERNAL_DIFF</code> is called, two environment variables,
2756<code>GIT_DIFF_PATH_COUNTER</code> and <code>GIT_DIFF_PATH_TOTAL</code> are set.</p></div>
Junio C Hamanob1acf022013-12-28 00:33:162757</dd>
2758<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052759<code>GIT_DIFF_PATH_COUNTER</code>
Junio C Hamanob1acf022013-12-28 00:33:162760</dt>
2761<dd>
2762<p>
2763 A 1-based counter incremented by one for every path.
2764</p>
2765</dd>
2766<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052767<code>GIT_DIFF_PATH_TOTAL</code>
Junio C Hamanob1acf022013-12-28 00:33:162768</dt>
2769<dd>
2770<p>
2771 The total number of paths.
2772</p>
Junio C Hamanof75a9402011-04-14 23:39:232773</dd>
2774</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112775</div>
2776<div class="sect2">
2777<h3 id="_other">other</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592778<div class="dlist"><dl>
2779<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052780<code>GIT_MERGE_VERBOSITY</code>
Junio C Hamano1e6e0062007-07-13 05:33:252781</dt>
2782<dd>
2783<p>
2784 A number controlling the amount of output shown by
2785 the recursive merge strategy. Overrides merge.verbosity.
Junio C Hamanoa28a9202012-06-21 07:08:232786 See <a href="git-merge.html">git-merge(1)</a>
Junio C Hamano1e6e0062007-07-13 05:33:252787</p>
2788</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592789<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052790<code>GIT_PAGER</code>
Junio C Hamano85e45fa2006-08-13 07:47:412791</dt>
2792<dd>
2793<p>
Junio C Hamanoac12f0e2014-09-19 22:32:512794 This environment variable overrides <code>$PAGER</code>. If it is set
Junio C Hamano076ffcc2013-02-06 05:13:212795 to an empty string or to the value "cat", Git will not launch
Junio C Hamanoac12f0e2014-09-19 22:32:512796 a pager. See also the <code>core.pager</code> option in
Junio C Hamanoa28a9202012-06-21 07:08:232797 <a href="git-config.html">git-config(1)</a>.
Junio C Hamano85e45fa2006-08-13 07:47:412798</p>
2799</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592800<dt class="hdlist1">
Junio C Hamanob4896852019-12-10 23:15:092801<code>GIT_PROGRESS_DELAY</code>
2802</dt>
2803<dd>
2804<p>
2805 A number controlling how many seconds to delay before showing
2806 optional progress indicators. Defaults to 2.
2807</p>
2808</dd>
2809<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052810<code>GIT_EDITOR</code>
Junio C Hamano0ff98162012-03-31 18:19:092811</dt>
2812<dd>
2813<p>
Junio C Hamanoac12f0e2014-09-19 22:32:512814 This environment variable overrides <code>$EDITOR</code> and <code>$VISUAL</code>.
Junio C Hamano076ffcc2013-02-06 05:13:212815 It is used by several Git commands when, on interactive mode,
Junio C Hamanoa28a9202012-06-21 07:08:232816 an editor is to be launched. See also <a href="git-var.html">git-var(1)</a>
Junio C Hamanoac12f0e2014-09-19 22:32:512817 and the <code>core.editor</code> option in <a href="git-config.html">git-config(1)</a>.
Junio C Hamano0ff98162012-03-31 18:19:092818</p>
2819</dd>
2820<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052821<code>GIT_SSH</code>
Junio C Hamano4cd1c0e2007-08-06 04:39:142822</dt>
Junio C Hamanofad84122014-12-05 23:38:062823<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052824<code>GIT_SSH_COMMAND</code>
Junio C Hamanofad84122014-12-05 23:38:062825</dt>
Junio C Hamano4cd1c0e2007-08-06 04:39:142826<dd>
2827<p>
Junio C Hamanofad84122014-12-05 23:38:062828 If either of these environment variables is set then <em>git fetch</em>
2829 and <em>git push</em> will use the specified command instead of <em>ssh</em>
2830 when they need to connect to a remote system.
Junio C Hamano912712b2017-12-06 18:04:012831 The command-line parameters passed to the configured command are
2832 determined by the ssh variant. See <code>ssh.variant</code> option in
2833 <a href="git-config.html">git-config(1)</a> for details.
Junio C Hamano4cd1c0e2007-08-06 04:39:142834</p>
Junio C Hamano6b7d2152019-04-16 12:51:152835<div class="paragraph"><p><code>$GIT_SSH_COMMAND</code> takes precedence over <code>$GIT_SSH</code>, and is interpreted
Junio C Hamanofad84122014-12-05 23:38:062836by the shell, which allows additional arguments to be included.
2837<code>$GIT_SSH</code> on the other hand must be just the path to a program
2838(which can be a wrapper shell script, if additional arguments are
2839needed).</p></div>
Junio C Hamano6b7d2152019-04-16 12:51:152840<div class="paragraph"><p>Usually it is easier to configure any desired options through your
Junio C Hamanoac12f0e2014-09-19 22:32:512841personal <code>.ssh/config</code> file. Please consult your ssh documentation
Junio C Hamanoba4b9282008-07-06 05:20:312842for further details.</p></div>
Junio C Hamano6b7d2152019-04-16 12:51:152843</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592844<dt class="hdlist1">
Junio C Hamanocbe0eb22017-02-27 23:37:492845<code>GIT_SSH_VARIANT</code>
2846</dt>
2847<dd>
2848<p>
2849 If this environment variable is set, it overrides Git&#8217;s autodetection
2850 whether <code>GIT_SSH</code>/<code>GIT_SSH_COMMAND</code>/<code>core.sshCommand</code> refer to OpenSSH,
2851 plink or tortoiseplink. This variable overrides the config setting
2852 <code>ssh.variant</code> that serves the same purpose.
2853</p>
2854</dd>
2855<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052856<code>GIT_ASKPASS</code>
Junio C Hamano3fd7b262010-09-08 22:44:202857</dt>
2858<dd>
2859<p>
Junio C Hamano076ffcc2013-02-06 05:13:212860 If this environment variable is set, then Git commands which need to
Junio C Hamano3fd7b262010-09-08 22:44:202861 acquire passwords or passphrases (e.g. for HTTP or IMAP authentication)
Junio C Hamanoe1aeb5e2014-06-06 19:16:292862 will call this program with a suitable prompt as command-line argument
Junio C Hamano042f2142016-06-27 18:05:052863 and read the password from its STDOUT. See also the <code>core.askPass</code>
Junio C Hamanoa28a9202012-06-21 07:08:232864 option in <a href="git-config.html">git-config(1)</a>.
Junio C Hamano3fd7b262010-09-08 22:44:202865</p>
2866</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592867<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052868<code>GIT_TERMINAL_PROMPT</code>
Junio C Hamano6df93d92014-12-22 22:48:092869</dt>
2870<dd>
2871<p>
2872 If this environment variable is set to <code>0</code>, git will not prompt
2873 on the terminal (e.g., when asking for HTTP authentication).
2874</p>
2875</dd>
2876<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052877<code>GIT_CONFIG_NOSYSTEM</code>
Junio C Hamanoeec745b2013-01-07 08:08:202878</dt>
2879<dd>
2880<p>
2881 Whether to skip reading settings from the system-wide
Junio C Hamanoac12f0e2014-09-19 22:32:512882 <code>$(prefix)/etc/gitconfig</code> file. This environment variable can
2883 be used along with <code>$HOME</code> and <code>$XDG_CONFIG_HOME</code> to create a
Junio C Hamanoeec745b2013-01-07 08:08:202884 predictable environment for a picky script, or you can set it
Junio C Hamanoac12f0e2014-09-19 22:32:512885 temporarily to avoid using a buggy <code>/etc/gitconfig</code> file while
Junio C Hamanoeec745b2013-01-07 08:08:202886 waiting for someone with sufficient permissions to fix it.
2887</p>
2888</dd>
2889<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052890<code>GIT_FLUSH</code>
Junio C Hamano401939f2007-07-01 06:34:302891</dt>
2892<dd>
2893<p>
2894 If this environment variable is set to "1", then commands such
Junio C Hamano1aa40d22010-01-21 17:46:432895 as <em>git blame</em> (in incremental mode), <em>git rev-list</em>, <em>git log</em>,
Junio C Hamano0241d052013-08-30 23:52:172896 <em>git check-attr</em> and <em>git check-ignore</em> will
Junio C Hamanoc7102962013-05-29 23:57:172897 force a flush of the output stream after each record have been
2898 flushed. If this
Junio C Hamano401939f2007-07-01 06:34:302899 variable is set to "0", the output of these commands will be done
2900 using completely buffered I/O. If this environment variable is
Junio C Hamano076ffcc2013-02-06 05:13:212901 not set, Git will choose buffered or record-oriented flushing
Junio C Hamano401939f2007-07-01 06:34:302902 based on whether stdout appears to be redirected to a file or not.
2903</p>
2904</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592905<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052906<code>GIT_TRACE</code>
Junio C Hamano7ccb9fd2006-07-15 01:38:402907</dt>
2908<dd>
2909<p>
Junio C Hamanodbe51052014-07-22 19:39:512910 Enables general trace messages, e.g. alias expansion, built-in
2911 command execution and external command execution.
Junio C Hamano7ccb9fd2006-07-15 01:38:402912</p>
Junio C Hamanodbe51052014-07-22 19:39:512913<div class="paragraph"><p>If this variable is set to "1", "2" or "true" (comparison
2914is case insensitive), trace messages will be printed to
2915stderr.</p></div>
2916<div class="paragraph"><p>If the variable is set to an integer value greater than 2
2917and lower than 10 (strictly) then Git will interpret this
2918value as an open file descriptor and will try to write the
2919trace messages into this file descriptor.</p></div>
2920<div class="paragraph"><p>Alternatively, if the variable is set to an absolute path
2921(starting with a <em>/</em> character), Git will interpret this
Junio C Hamano980e61e2018-09-17 22:45:522922as a file path and will try to append the trace messages
2923to it.</p></div>
Junio C Hamanodbe51052014-07-22 19:39:512924<div class="paragraph"><p>Unsetting the variable, or setting it to empty, "0" or
2925"false" (case insensitive) disables trace messages.</p></div>
Junio C Hamano7ccb9fd2006-07-15 01:38:402926</dd>
Junio C Hamanoabad6da2013-01-06 09:06:322927<dt class="hdlist1">
Junio C Hamanod7105602017-11-21 05:32:502928<code>GIT_TRACE_FSMONITOR</code>
2929</dt>
2930<dd>
2931<p>
2932 Enables trace messages for the filesystem monitor extension.
2933 See <code>GIT_TRACE</code> for available trace output options.
2934</p>
2935</dd>
2936<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052937<code>GIT_TRACE_PACK_ACCESS</code>
Junio C Hamanofa1d3492013-06-20 23:39:432938</dt>
2939<dd>
2940<p>
Junio C Hamanodbe51052014-07-22 19:39:512941 Enables trace messages for all accesses to any packs. For each
Junio C Hamanofa1d3492013-06-20 23:39:432942 access, the pack file name and an offset in the pack is
2943 recorded. This may be helpful for troubleshooting some
2944 pack-related performance problems.
Junio C Hamano042f2142016-06-27 18:05:052945 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanofa1d3492013-06-20 23:39:432946</p>
2947</dd>
2948<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052949<code>GIT_TRACE_PACKET</code>
Junio C Hamanofa1d3492013-06-20 23:39:432950</dt>
2951<dd>
2952<p>
Junio C Hamanodbe51052014-07-22 19:39:512953 Enables trace messages for all packets coming in or out of a
2954 given program. This can help with debugging object negotiation
2955 or other protocol issues. Tracing is turned off at a packet
Junio C Hamano042f2142016-06-27 18:05:052956 starting with "PACK" (but see <code>GIT_TRACE_PACKFILE</code> below).
2957 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanodbe51052014-07-22 19:39:512958</p>
2959</dd>
2960<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052961<code>GIT_TRACE_PACKFILE</code>
Junio C Hamanod7ed4042015-08-03 19:43:002962</dt>
2963<dd>
2964<p>
2965 Enables tracing of packfiles sent or received by a
2966 given program. Unlike other trace output, this trace is
2967 verbatim: no headers, and no quoting of binary data. You almost
2968 certainly want to direct into a file (e.g.,
2969 <code>GIT_TRACE_PACKFILE=/tmp/my.pack</code>) rather than displaying it on
2970 the terminal or mixing it with other trace output.
2971</p>
2972<div class="paragraph"><p>Note that this is currently only implemented for the client side
2973of clones and fetches.</p></div>
2974</dd>
2975<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052976<code>GIT_TRACE_PERFORMANCE</code>
Junio C Hamanodbe51052014-07-22 19:39:512977</dt>
2978<dd>
2979<p>
2980 Enables performance related trace messages, e.g. total execution
2981 time of each Git command.
Junio C Hamano042f2142016-06-27 18:05:052982 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanodbe51052014-07-22 19:39:512983</p>
2984</dd>
2985<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052986<code>GIT_TRACE_SETUP</code>
Junio C Hamanodbe51052014-07-22 19:39:512987</dt>
2988<dd>
2989<p>
2990 Enables trace messages printing the .git, working tree and current
2991 working directory after Git has completed its setup phase.
Junio C Hamano042f2142016-06-27 18:05:052992 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanodbe51052014-07-22 19:39:512993</p>
2994</dd>
2995<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052996<code>GIT_TRACE_SHALLOW</code>
Junio C Hamanodbe51052014-07-22 19:39:512997</dt>
2998<dd>
2999<p>
3000 Enables trace messages that can help debugging fetching /
3001 cloning of shallow repositories.
Junio C Hamano042f2142016-06-27 18:05:053002 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanofa1d3492013-06-20 23:39:433003</p>
3004</dd>
3005<dt class="hdlist1">
Junio C Hamanoc6c919b2016-07-06 21:34:153006<code>GIT_TRACE_CURL</code>
3007</dt>
3008<dd>
3009<p>
3010 Enables a curl full trace dump of all incoming and outgoing data,
3011 including descriptive information, of the git transport protocol.
3012 This is similar to doing curl <code>--trace-ascii</code> on the command line.
3013 This option overrides setting the <code>GIT_CURL_VERBOSE</code> environment
3014 variable.
3015 See <code>GIT_TRACE</code> for available trace output options.
3016</p>
3017</dd>
3018<dt class="hdlist1">
Junio C Hamano640779d2018-02-14 01:29:143019<code>GIT_TRACE_CURL_NO_DATA</code>
3020</dt>
3021<dd>
3022<p>
3023 When a curl trace is enabled (see <code>GIT_TRACE_CURL</code> above), do not dump
3024 data (that is, only dump info lines and headers).
3025</p>
3026</dd>
3027<dt class="hdlist1">
Junio C Hamanoc01eecf2019-05-30 18:17:473028<code>GIT_TRACE2</code>
Junio C Hamano56d696e2019-05-19 09:01:193029</dt>
3030<dd>
3031<p>
3032 Enables more detailed trace messages from the "trace2" library.
Junio C Hamanoc01eecf2019-05-30 18:17:473033 Output from <code>GIT_TRACE2</code> is a simple text-based format for human
Junio C Hamano56d696e2019-05-19 09:01:193034 readability.
3035</p>
Junio C Hamanoc01eecf2019-05-30 18:17:473036<div class="paragraph"><p>If this variable is set to "1", "2" or "true" (comparison
3037is case insensitive), trace messages will be printed to
3038stderr.</p></div>
3039<div class="paragraph"><p>If the variable is set to an integer value greater than 2
3040and lower than 10 (strictly) then Git will interpret this
3041value as an open file descriptor and will try to write the
3042trace messages into this file descriptor.</p></div>
3043<div class="paragraph"><p>Alternatively, if the variable is set to an absolute path
3044(starting with a <em>/</em> character), Git will interpret this
3045as a file path and will try to append the trace messages
3046to it. If the path already exists and is a directory, the
3047trace messages will be written to files (one per process)
3048in that directory, named according to the last component
3049of the SID and an optional counter (to avoid filename
3050collisions).</p></div>
3051<div class="paragraph"><p>In addition, if the variable is set to
3052<code>af_unix:[&lt;socket_type&gt;:]&lt;absolute-pathname&gt;</code>, Git will try
3053to open the path as a Unix Domain Socket. The socket type
3054can be either <code>stream</code> or <code>dgram</code>.</p></div>
3055<div class="paragraph"><p>Unsetting the variable, or setting it to empty, "0" or
3056"false" (case insensitive) disables trace messages.</p></div>
3057<div class="paragraph"><p>See <a href="technical/api-trace2.html">Trace2 documentation</a>
3058for full details.</p></div>
Junio C Hamano56d696e2019-05-19 09:01:193059</dd>
3060<dt class="hdlist1">
Junio C Hamanoc01eecf2019-05-30 18:17:473061<code>GIT_TRACE2_EVENT</code>
Junio C Hamano56d696e2019-05-19 09:01:193062</dt>
3063<dd>
3064<p>
3065 This setting writes a JSON-based format that is suited for machine
Junio C Hamanoc01eecf2019-05-30 18:17:473066 interpretation.
3067 See <code>GIT_TRACE2</code> for available trace output options and
3068 <a href="technical/api-trace2.html">Trace2 documentation</a> for full details.
Junio C Hamano56d696e2019-05-19 09:01:193069</p>
3070</dd>
3071<dt class="hdlist1">
Junio C Hamanoc01eecf2019-05-30 18:17:473072<code>GIT_TRACE2_PERF</code>
Junio C Hamano56d696e2019-05-19 09:01:193073</dt>
3074<dd>
3075<p>
Junio C Hamanoc01eecf2019-05-30 18:17:473076 In addition to the text-based messages available in <code>GIT_TRACE2</code>, this
Junio C Hamano56d696e2019-05-19 09:01:193077 setting writes a column-based format for understanding nesting
Junio C Hamanoc01eecf2019-05-30 18:17:473078 regions.
3079 See <code>GIT_TRACE2</code> for available trace output options and
3080 <a href="technical/api-trace2.html">Trace2 documentation</a> for full details.
Junio C Hamano56d696e2019-05-19 09:01:193081</p>
3082</dd>
3083<dt class="hdlist1">
Junio C Hamano640779d2018-02-14 01:29:143084<code>GIT_REDACT_COOKIES</code>
3085</dt>
3086<dd>
3087<p>
3088 This can be set to a comma-separated list of strings. When a curl trace
3089 is enabled (see <code>GIT_TRACE_CURL</code> above), whenever a "Cookies:" header
3090 sent by the client is dumped, values of cookies whose key is in that
3091 list (case-sensitive) are redacted.
3092</p>
3093</dd>
3094<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053095<code>GIT_LITERAL_PATHSPECS</code>
Junio C Hamanoabad6da2013-01-06 09:06:323096</dt>
3097<dd>
3098<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513099 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamanoabad6da2013-01-06 09:06:323100 pathspecs literally, rather than as glob patterns. For example,
Junio C Hamanoac12f0e2014-09-19 22:32:513101 running <code>GIT_LITERAL_PATHSPECS=1 git log -- '*.c'</code> will search
3102 for commits that touch the path <code>*.c</code>, not any paths that the
3103 glob <code>*.c</code> matches. You might want this if you are feeding
Junio C Hamano076ffcc2013-02-06 05:13:213104 literal paths to Git (e.g., paths previously given to you by
Junio C Hamanoac12f0e2014-09-19 22:32:513105 <code>git ls-tree</code>, <code>--raw</code> diff output, etc).
Junio C Hamanoabad6da2013-01-06 09:06:323106</p>
3107</dd>
Junio C Hamano8eac2682013-09-09 22:35:203108<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053109<code>GIT_GLOB_PATHSPECS</code>
Junio C Hamano8eac2682013-09-09 22:35:203110</dt>
3111<dd>
3112<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513113 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamano8eac2682013-09-09 22:35:203114 pathspecs as glob patterns (aka "glob" magic).
3115</p>
3116</dd>
3117<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053118<code>GIT_NOGLOB_PATHSPECS</code>
Junio C Hamano8eac2682013-09-09 22:35:203119</dt>
3120<dd>
3121<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513122 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamano8eac2682013-09-09 22:35:203123 pathspecs as literal (aka "literal" magic).
3124</p>
3125</dd>
3126<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053127<code>GIT_ICASE_PATHSPECS</code>
Junio C Hamano8eac2682013-09-09 22:35:203128</dt>
3129<dd>
3130<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513131 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamano8eac2682013-09-09 22:35:203132 pathspecs as case-insensitive.
3133</p>
3134</dd>
Junio C Hamanoaef76442013-10-18 22:11:273135<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053136<code>GIT_REFLOG_ACTION</code>
Junio C Hamanoaef76442013-10-18 22:11:273137</dt>
3138<dd>
3139<p>
3140 When a ref is updated, reflog entries are created to keep
3141 track of the reason why the ref was updated (which is
3142 typically the name of the high-level command that updated
3143 the ref), in addition to the old and new values of the ref.
3144 A scripted Porcelain command can use set_reflog_action
Junio C Hamanoac12f0e2014-09-19 22:32:513145 helper function in <code>git-sh-setup</code> to set its name to this
Junio C Hamanoaef76442013-10-18 22:11:273146 variable when it is invoked as the top level command by the
3147 end user, to be recorded in the body of the reflog.
3148</p>
3149</dd>
Junio C Hamanoef57d1e2015-03-25 21:23:003150<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053151<code>GIT_REF_PARANOIA</code>
Junio C Hamanoef57d1e2015-03-25 21:23:003152</dt>
3153<dd>
3154<p>
3155 If set to <code>1</code>, include broken or badly named refs when iterating
3156 over lists of refs. In a normal, non-corrupted repository, this
3157 does nothing. However, enabling it may help git to detect and
3158 abort some operations in the presence of broken refs. Git sets
3159 this variable automatically when performing destructive
3160 operations like <a href="git-prune.html">git-prune(1)</a>. You should not need to set
3161 it yourself unless you want to be paranoid about making sure
3162 an operation has touched every ref (e.g., because you are
3163 cloning a repository to make a backup).
3164</p>
3165</dd>
Junio C Hamano1eb56092015-10-05 20:39:533166<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053167<code>GIT_ALLOW_PROTOCOL</code>
Junio C Hamano1eb56092015-10-05 20:39:533168</dt>
3169<dd>
3170<p>
Junio C Hamano9e35abf2016-12-27 22:37:273171 If set to a colon-separated list of protocols, behave as if
3172 <code>protocol.allow</code> is set to <code>never</code>, and each of the listed
3173 protocols has <code>protocol.&lt;name&gt;.allow</code> set to <code>always</code>
3174 (overriding any existing configuration). In other words, any
3175 protocol not mentioned will be disallowed (i.e., this is a
3176 whitelist, not a blacklist). See the description of
3177 <code>protocol.allow</code> in <a href="git-config.html">git-config(1)</a> for more details.
Junio C Hamano1eb56092015-10-05 20:39:533178</p>
Junio C Hamano9e35abf2016-12-27 22:37:273179</dd>
3180<dt class="hdlist1">
3181<code>GIT_PROTOCOL_FROM_USER</code>
3182</dt>
3183<dd>
Junio C Hamano1eb56092015-10-05 20:39:533184<p>
Junio C Hamano9e35abf2016-12-27 22:37:273185 Set to 0 to prevent protocols used by fetch/push/clone which are
3186 configured to the <code>user</code> state. This is useful to restrict recursive
3187 submodule initialization from an untrusted repository or for programs
3188 which feed potentially-untrusted URLS to git commands. See
3189 <a href="git-config.html">git-config(1)</a> for more details.
Junio C Hamano1eb56092015-10-05 20:39:533190</p>
Junio C Hamano1eb56092015-10-05 20:39:533191</dd>
Junio C Hamano139b7d12017-10-03 07:10:593192<dt class="hdlist1">
Junio C Hamano912712b2017-12-06 18:04:013193<code>GIT_PROTOCOL</code>
3194</dt>
3195<dd>
3196<p>
3197 For internal use only. Used in handshaking the wire protocol.
3198 Contains a colon <em>:</em> separated list of keys with optional values
3199 <em>key[=value]</em>. Presence of unknown keys and values must be
3200 ignored.
3201</p>
3202</dd>
3203<dt class="hdlist1">
Junio C Hamano139b7d12017-10-03 07:10:593204<code>GIT_OPTIONAL_LOCKS</code>
3205</dt>
3206<dd>
3207<p>
3208 If set to <code>0</code>, Git will complete any requested operation without
3209 performing any optional sub-operations that require taking a lock.
3210 For example, this will prevent <code>git status</code> from refreshing the
3211 index as a side effect. This is useful for processes running in
3212 the background which do not want to cause lock contention with
3213 other operations on the repository. Defaults to <code>1</code>.
3214</p>
3215</dd>
Junio C Hamano3a9c0342017-11-10 06:01:123216<dt class="hdlist1">
3217<code>GIT_REDIRECT_STDIN</code>
3218</dt>
3219<dt class="hdlist1">
3220<code>GIT_REDIRECT_STDOUT</code>
3221</dt>
3222<dt class="hdlist1">
3223<code>GIT_REDIRECT_STDERR</code>
3224</dt>
3225<dd>
3226<p>
3227 Windows-only: allow redirecting the standard input/output/error
3228 handles to paths specified by the environment variables. This is
3229 particularly useful in multi-threaded applications where the
3230 canonical way to pass standard handles via <code>CreateProcess()</code> is
3231 not an option because it would require the handles to be marked
3232 inheritable (and consequently <strong>every</strong> spawned process would
3233 inherit them, possibly blocking regular Git operations). The
3234 primary intended use case is to use named pipes for communication
3235 (e.g. <code>\\.\pipe\my-git-stdin-123</code>).
3236</p>
3237<div class="paragraph"><p>Two special values are supported: <code>off</code> will simply close the
3238corresponding standard handle, and if <code>GIT_REDIRECT_STDERR</code> is
3239<code>2&gt;&amp;1</code>, standard error will be redirected to the same handle as
3240standard output.</p></div>
3241</dd>
Junio C Hamano047135e2017-12-19 21:57:543242<dt class="hdlist1">
3243<code>GIT_PRINT_SHA1_ELLIPSIS</code> (deprecated)
3244</dt>
3245<dd>
3246<p>
3247 If set to <code>yes</code>, print an ellipsis following an
3248 (abbreviated) SHA-1 value. This affects indications of
3249 detached HEADs (<a href="git-checkout.html">git-checkout(1)</a>) and the raw
3250 diff output (<a href="git-diff.html">git-diff(1)</a>). Printing an
3251 ellipsis in the cases mentioned is no longer considered
3252 adequate and support for it is likely to be removed in the
3253 foreseeable future (along with the variable).
3254</p>
3255</dd>
Junio C Hamanoba4b9282008-07-06 05:20:313256</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:233257</div>
Junio C Hamano9d971152012-12-19 00:43:113258</div>
3259</div>
3260<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313261<h2 id="_discussion_a_id_discussion_a">Discussion<a id="Discussion"></a></h2>
Junio C Hamano1a4e8412005-12-27 08:17:233262<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:593263<div class="paragraph"><p>More detail on the following is available from the
Junio C Hamano076ffcc2013-02-06 05:13:213264<a href="user-manual.html#git-concepts">Git concepts chapter of the
Junio C Hamanoa28a9202012-06-21 07:08:233265user-manual</a> and <a href="gitcore-tutorial.html">gitcore-tutorial(7)</a>.</p></div>
Junio C Hamano076ffcc2013-02-06 05:13:213266<div class="paragraph"><p>A Git project normally consists of a working directory with a ".git"
Junio C Hamano597ffcf2007-09-17 17:33:153267subdirectory at the top level. The .git directory contains, among other
3268things, a compressed object database representing the complete history
3269of the project, an "index" file which links that history to the current
3270contents of the working tree, and named pointers into that history such
Junio C Hamanoba4b9282008-07-06 05:20:313271as tags and branch heads.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593272<div class="paragraph"><p>The object database contains objects of three main types: blobs, which
Junio C Hamano597ffcf2007-09-17 17:33:153273hold file data; trees, which point to blobs and other trees to build up
Junio C Hamanofe986052007-12-19 07:33:383274directory hierarchies; and commits, which each reference a single tree
Junio C Hamanoba4b9282008-07-06 05:20:313275and some number of parent commits.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593276<div class="paragraph"><p>The commit, equivalent to what other systems call a "changeset" or
3277"version", represents a step in the project&#8217;s history, and each parent
Junio C Hamano597ffcf2007-09-17 17:33:153278represents an immediately preceding step. Commits with more than one
Junio C Hamanoba4b9282008-07-06 05:20:313279parent represent merges of independent lines of development.</p></div>
Junio C Hamanoe3f080d2013-04-22 02:27:133280<div class="paragraph"><p>All objects are named by the SHA-1 hash of their contents, normally
Junio C Hamano597ffcf2007-09-17 17:33:153281written as a string of 40 hex digits. Such names are globally unique.
3282The entire history leading up to a commit can be vouched for by signing
3283just that commit. A fourth object type, the tag, is provided for this
Junio C Hamanoba4b9282008-07-06 05:20:313284purpose.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593285<div class="paragraph"><p>When first created, objects are stored in individual files, but for
Junio C Hamanoba4b9282008-07-06 05:20:313286efficiency may later be compressed together into "pack files".</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593287<div class="paragraph"><p>Named pointers called refs mark interesting points in history. A ref
Junio C Hamanoe3f080d2013-04-22 02:27:133288may contain the SHA-1 name of an object or the name of another ref. Refs
Junio C Hamanoac12f0e2014-09-19 22:32:513289with names beginning <code>ref/head/</code> contain the SHA-1 name of the most
Junio C Hamanoe3f080d2013-04-22 02:27:133290recent commit (or "head") of a branch under development. SHA-1 names of
Junio C Hamanoac12f0e2014-09-19 22:32:513291tags of interest are stored under <code>ref/tags/</code>. A special ref named
3292<code>HEAD</code> contains the name of the currently checked-out branch.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593293<div class="paragraph"><p>The index file is initialized with a list of all paths and, for each
Junio C Hamano597ffcf2007-09-17 17:33:153294path, a blob object and a set of attributes. The blob object represents
3295the contents of the file as of the head of the current branch. The
3296attributes (last modified time, size, etc.) are taken from the
3297corresponding file in the working tree. Subsequent changes to the
3298working tree can be found by comparing these attributes. The index may
3299be updated with new content, and new commits may be created from the
Junio C Hamanoba4b9282008-07-06 05:20:313300content stored in the index.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593301<div class="paragraph"><p>The index is also capable of storing multiple entries (called "stages")
Junio C Hamano597ffcf2007-09-17 17:33:153302for a given pathname. These stages are used to hold the various
Junio C Hamanoba4b9282008-07-06 05:20:313303unmerged version of a file when a merge is in progress.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:233304</div>
Junio C Hamano9d971152012-12-19 00:43:113305</div>
3306<div class="sect1">
Junio C Hamanod0316112012-08-22 19:55:293307<h2 id="_further_documentation">FURTHER DOCUMENTATION</h2>
3308<div class="sectionbody">
3309<div class="paragraph"><p>See the references in the "description" section to get started
Junio C Hamano076ffcc2013-02-06 05:13:213310using Git. The following is probably more detail than necessary
Junio C Hamanod0316112012-08-22 19:55:293311for a first-time user.</p></div>
Junio C Hamano076ffcc2013-02-06 05:13:213312<div class="paragraph"><p>The <a href="user-manual.html#git-concepts">Git concepts chapter of the
Junio C Hamanod0316112012-08-22 19:55:293313user-manual</a> and <a href="gitcore-tutorial.html">gitcore-tutorial(7)</a> both provide
Junio C Hamano076ffcc2013-02-06 05:13:213314introductions to the underlying Git architecture.</p></div>
Junio C Hamanod0316112012-08-22 19:55:293315<div class="paragraph"><p>See <a href="gitworkflows.html">gitworkflows(7)</a> for an overview of recommended workflows.</p></div>
3316<div class="paragraph"><p>See also the <a href="howto-index.html">howto</a> documents for some useful
3317examples.</p></div>
3318<div class="paragraph"><p>The internals are documented in the
Junio C Hamano076ffcc2013-02-06 05:13:213319<a href="technical/api-index.html">Git API documentation</a>.</p></div>
Junio C Hamanod0316112012-08-22 19:55:293320<div class="paragraph"><p>Users migrating from CVS may also want to
3321read <a href="gitcvs-migration.html">gitcvs-migration(7)</a>.</p></div>
3322</div>
Junio C Hamano9d971152012-12-19 00:43:113323</div>
3324<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313325<h2 id="_authors">Authors</h2>
Junio C Hamano1a4e8412005-12-27 08:17:233326<div class="sectionbody">
Junio C Hamano5f3d8392011-03-15 23:33:353327<div class="paragraph"><p>Git was started by Linus Torvalds, and is currently maintained by Junio
Junio C Hamano076ffcc2013-02-06 05:13:213328C Hamano. Numerous contributions have come from the Git mailing list
Junio C Hamano7b43d412014-07-23 23:09:443329&lt;<a href="mailto:git@vger.kernel.org">git@vger.kernel.org</a>&gt;. <a href="http://www.openhub.net/p/git/contributors/summary">http://www.openhub.net/p/git/contributors/summary</a>
Junio C Hamano0b0417b2012-12-13 20:35:023330gives you a more complete list of contributors.</p></div>
3331<div class="paragraph"><p>If you have a clone of git.git itself, the
Junio C Hamanoa28a9202012-06-21 07:08:233332output of <a href="git-shortlog.html">git-shortlog(1)</a> and <a href="git-blame.html">git-blame(1)</a> can show you
Junio C Hamano5f3d8392011-03-15 23:33:353333the authors for specific parts of the project.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:233334</div>
Junio C Hamano9d971152012-12-19 00:43:113335</div>
3336<div class="sect1">
Junio C Hamanoa9788762010-08-03 15:15:543337<h2 id="_reporting_bugs">Reporting Bugs</h2>
3338<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:593339<div class="paragraph"><p>Report bugs to the Git mailing list &lt;<a href="mailto:git@vger.kernel.org">git@vger.kernel.org</a>&gt; where the
Junio C Hamanoa9788762010-08-03 15:15:543340development and maintenance is primarily done. You do not have to be
Junio C Hamano32a75272018-10-16 07:37:353341subscribed to the list to send a message there. See the list archive
Junio C Hamano59e88242019-12-10 14:09:043342at <a href="https://lore.kernel.org/git">https://lore.kernel.org/git</a> for previous bug reports and other
Junio C Hamano32a75272018-10-16 07:37:353343discussions.</p></div>
Junio C Hamano8b40d4b2018-03-15 22:52:333344<div class="paragraph"><p>Issues which are security relevant should be disclosed privately to
3345the Git Security mailing list &lt;<a href="mailto:git-security@googlegroups.com">git-security@googlegroups.com</a>&gt;.</p></div>
Junio C Hamanoa9788762010-08-03 15:15:543346</div>
Junio C Hamano9d971152012-12-19 00:43:113347</div>
3348<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313349<h2 id="_see_also">SEE ALSO</h2>
Junio C Hamano9e1793f2008-06-02 07:31:163350<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:233351<div class="paragraph"><p><a href="gittutorial.html">gittutorial(7)</a>, <a href="gittutorial-2.html">gittutorial-2(7)</a>,
Junio C Hamano446e30b2014-10-16 21:30:323352<a href="giteveryday.html">giteveryday(7)</a>, <a href="gitcvs-migration.html">gitcvs-migration(7)</a>,
Junio C Hamanoa28a9202012-06-21 07:08:233353<a href="gitglossary.html">gitglossary(7)</a>, <a href="gitcore-tutorial.html">gitcore-tutorial(7)</a>,
3354<a href="gitcli.html">gitcli(7)</a>, <a href="user-manual.html">The Git User&#8217;s Manual</a>,
3355<a href="gitworkflows.html">gitworkflows(7)</a></p></div>
Junio C Hamano9e1793f2008-06-02 07:31:163356</div>
Junio C Hamano9d971152012-12-19 00:43:113357</div>
3358<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313359<h2 id="_git">GIT</h2>
Junio C Hamano1a4e8412005-12-27 08:17:233360<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:233361<div class="paragraph"><p>Part of the <a href="git.html">git(1)</a> suite</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:233362</div>
Junio C Hamano7bd050f2011-09-22 06:32:223363</div>
Junio C Hamano9d971152012-12-19 00:43:113364</div>
Junio C Hamano7bd050f2011-09-22 06:32:223365<div id="footnotes"><hr /></div>
Junio C Hamano1a4e8412005-12-27 08:17:233366<div id="footer">
3367<div id="footer-text">
Junio C Hamano2ef0ba32018-01-26 23:13:533368Last updated
Junio C Hamano7a46cd62020-03-15 21:57:103369 2020-03-10 08:03:13 PDT
Junio C Hamano1a4e8412005-12-27 08:17:233370</div>
3371</div>
3372</body>
3373</html>