blob: 31826fc0ce1329a63c6c38d84130b187da67e606 [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}
439/* Because the table frame attribute is overriden by CSS in most browsers. */
440div.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>
913 Set the path to the repository. This can also be controlled by
Junio C Hamano042f2142016-06-27 18:05:05914 setting the <code>GIT_DIR</code> environment variable. It can be an absolute
Junio C Hamano7d575a52008-04-30 08:45:27915 path or relative path to current working directory.
Junio C Hamanof870ef82006-07-29 09:10:13916</p>
917</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59918<dt class="hdlist1">
Junio C Hamanod526ba92007-07-02 00:17:42919--work-tree=&lt;path&gt;
920</dt>
921<dd>
922<p>
Junio C Hamano80d58462011-01-24 22:52:52923 Set the path to the working tree. It can be an absolute path
924 or a path relative to the current working directory.
Junio C Hamanod526ba92007-07-02 00:17:42925 This can also be controlled by setting the GIT_WORK_TREE
926 environment variable and the core.worktree configuration
Junio C Hamanoa28a9202012-06-21 07:08:23927 variable (see core.worktree in <a href="git-config.html">git-config(1)</a> for a
Junio C Hamano80d58462011-01-24 22:52:52928 more detailed discussion).
Junio C Hamanod526ba92007-07-02 00:17:42929</p>
930</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59931<dt class="hdlist1">
Junio C Hamanof7279012011-08-18 06:13:13932--namespace=&lt;path&gt;
933</dt>
934<dd>
935<p>
Junio C Hamano076ffcc2013-02-06 05:13:21936 Set the Git namespace. See <a href="gitnamespaces.html">gitnamespaces(7)</a> for more
Junio C Hamanoac12f0e2014-09-19 22:32:51937 details. Equivalent to setting the <code>GIT_NAMESPACE</code> environment
Junio C Hamanof7279012011-08-18 06:13:13938 variable.
939</p>
940</dd>
941<dt class="hdlist1">
Junio C Hamano4a401d52016-10-26 22:24:37942--super-prefix=&lt;path&gt;
943</dt>
944<dd>
945<p>
946 Currently for internal use only. Set a prefix which gives a path from
947 above a repository down to its root. One use is to give submodules
948 context about the superproject that invoked it.
949</p>
950</dd>
951<dt class="hdlist1">
Junio C Hamanof870ef82006-07-29 09:10:13952--bare
953</dt>
954<dd>
955<p>
Junio C Hamanoc435b1c2007-08-28 06:25:35956 Treat the repository as a bare repository. If GIT_DIR
957 environment is not set, it is set to the current working
958 directory.
Junio C Hamanof870ef82006-07-29 09:10:13959</p>
960</dd>
Junio C Hamano68cf15a2010-11-06 01:01:59961<dt class="hdlist1">
Junio C Hamano3d23a0a2009-10-19 08:04:30962--no-replace-objects
963</dt>
964<dd>
965<p>
Junio C Hamano076ffcc2013-02-06 05:13:21966 Do not use replacement refs to replace Git objects. See
Junio C Hamanoa28a9202012-06-21 07:08:23967 <a href="git-replace.html">git-replace(1)</a> for more information.
Junio C Hamano3d23a0a2009-10-19 08:04:30968</p>
969</dd>
Junio C Hamanoabad6da2013-01-06 09:06:32970<dt class="hdlist1">
971--literal-pathspecs
972</dt>
973<dd>
974<p>
Junio C Hamano8eac2682013-09-09 22:35:20975 Treat pathspecs literally (i.e. no globbing, no pathspec magic).
Junio C Hamanoac12f0e2014-09-19 22:32:51976 This is equivalent to setting the <code>GIT_LITERAL_PATHSPECS</code> environment
977 variable to <code>1</code>.
Junio C Hamanoabad6da2013-01-06 09:06:32978</p>
979</dd>
Junio C Hamanob9acecb2013-10-16 01:18:56980<dt class="hdlist1">
981--glob-pathspecs
982</dt>
983<dd>
984<p>
Junio C Hamano8eac2682013-09-09 22:35:20985 Add "glob" magic to all pathspec. This is equivalent to setting
Junio C Hamanoac12f0e2014-09-19 22:32:51986 the <code>GIT_GLOB_PATHSPECS</code> environment variable to <code>1</code>. Disabling
Junio C Hamano8eac2682013-09-09 22:35:20987 globbing on individual pathspecs can be done using pathspec
Junio C Hamanob9acecb2013-10-16 01:18:56988 magic ":(literal)"
989</p>
990</dd>
991<dt class="hdlist1">
992--noglob-pathspecs
993</dt>
994<dd>
995<p>
Junio C Hamano8eac2682013-09-09 22:35:20996 Add "literal" magic to all pathspec. This is equivalent to setting
Junio C Hamanoac12f0e2014-09-19 22:32:51997 the <code>GIT_NOGLOB_PATHSPECS</code> environment variable to <code>1</code>. Enabling
Junio C Hamano8eac2682013-09-09 22:35:20998 globbing on individual pathspecs can be done using pathspec
Junio C Hamanob9acecb2013-10-16 01:18:56999 magic ":(glob)"
1000</p>
1001</dd>
1002<dt class="hdlist1">
1003--icase-pathspecs
1004</dt>
1005<dd>
1006<p>
Junio C Hamano8eac2682013-09-09 22:35:201007 Add "icase" magic to all pathspec. This is equivalent to setting
Junio C Hamanoac12f0e2014-09-19 22:32:511008 the <code>GIT_ICASE_PATHSPECS</code> environment variable to <code>1</code>.
Junio C Hamanob9acecb2013-10-16 01:18:561009</p>
1010</dd>
Junio C Hamano139b7d12017-10-03 07:10:591011<dt class="hdlist1">
1012--no-optional-locks
1013</dt>
1014<dd>
1015<p>
1016 Do not perform optional operations that require locks. This is
1017 equivalent to setting the <code>GIT_OPTIONAL_LOCKS</code> to <code>0</code>.
1018</p>
1019</dd>
Junio C Hamanoc9cb5172018-06-01 07:13:441020<dt class="hdlist1">
1021--list-cmds=group[,group&#8230;]
1022</dt>
1023<dd>
1024<p>
1025 List commands by group. This is an internal/experimental
1026 option and may change or be removed in the future. Supported
1027 groups are: builtins, parseopt (builtin commands that use
1028 parse-options), main (all commands in libexec directory),
1029 others (all other commands in <code>$PATH</code> that have git- prefix),
1030 list-&lt;category&gt; (see categories in command-list.txt),
1031 nohelpers (exclude helper commands), alias and config
1032 (retrieve command list from config variable completion.commands)
1033</p>
1034</dd>
Junio C Hamanob9acecb2013-10-16 01:18:561035</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:231036</div>
Junio C Hamano9d971152012-12-19 00:43:111037</div>
1038<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:311039<h2 id="_git_commands">GIT COMMANDS</h2>
Junio C Hamano1a4e8412005-12-27 08:17:231040<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:211041<div class="paragraph"><p>We divide Git into high level ("porcelain") commands and low level
Junio C Hamanoba4b9282008-07-06 05:20:311042("plumbing") commands.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:231043</div>
Junio C Hamano9d971152012-12-19 00:43:111044</div>
1045<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:311046<h2 id="_high_level_commands_porcelain">High-level commands (porcelain)</h2>
Junio C Hamano1a4e8412005-12-27 08:17:231047<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:591048<div class="paragraph"><p>We separate the porcelain commands into the main commands and some
Junio C Hamanoba4b9282008-07-06 05:20:311049ancillary user utilities.</p></div>
Junio C Hamano9d971152012-12-19 00:43:111050<div class="sect2">
1051<h3 id="_main_porcelain_commands">Main porcelain commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591052<div class="dlist"><dl>
1053<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231054<a href="git-add.html">git-add(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231055</dt>
1056<dd>
1057<p>
Junio C Hamano4cd1c0e2007-08-06 04:39:141058 Add file contents to the index.
Junio C Hamano1a4e8412005-12-27 08:17:231059</p>
1060</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591061<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231062<a href="git-am.html">git-am(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231063</dt>
1064<dd>
1065<p>
Junio C Hamano7c73c662007-01-19 00:37:501066 Apply a series of patches from a mailbox.
Junio C Hamano1a4e8412005-12-27 08:17:231067</p>
1068</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591069<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231070<a href="git-archive.html">git-archive(1)</a>
Junio C Hamano817abb42006-09-26 07:16:581071</dt>
1072<dd>
1073<p>
Junio C Hamano4ec06712007-06-09 20:39:331074 Create an archive of files from a named tree.
Junio C Hamano817abb42006-09-26 07:16:581075</p>
1076</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591077<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231078<a href="git-bisect.html">git-bisect(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231079</dt>
1080<dd>
1081<p>
Junio C Hamano9c512872015-08-12 21:59:251082 Use binary search to find the commit that introduced a bug.
Junio C Hamano1a4e8412005-12-27 08:17:231083</p>
1084</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591085<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231086<a href="git-branch.html">git-branch(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231087</dt>
1088<dd>
1089<p>
Junio C Hamano7c73c662007-01-19 00:37:501090 List, create, or delete branches.
Junio C Hamano1a4e8412005-12-27 08:17:231091</p>
1092</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591093<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231094<a href="git-bundle.html">git-bundle(1)</a>
Junio C Hamano6ac2f142007-03-01 01:24:561095</dt>
1096<dd>
1097<p>
1098 Move objects and refs by archive.
1099</p>
1100</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591101<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231102<a href="git-checkout.html">git-checkout(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231103</dt>
1104<dd>
1105<p>
Junio C Hamano823eebb2015-07-10 22:29:341106 Switch branches or restore working tree files.
Junio C Hamano1a4e8412005-12-27 08:17:231107</p>
1108</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591109<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231110<a href="git-cherry-pick.html">git-cherry-pick(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231111</dt>
1112<dd>
1113<p>
Junio C Hamano89a57342010-06-22 23:22:551114 Apply the changes introduced by some existing commits.
Junio C Hamano1a4e8412005-12-27 08:17:231115</p>
1116</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591117<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231118<a href="git-citool.html">git-citool(1)</a>
Junio C Hamano58784fc2007-06-23 08:48:571119</dt>
1120<dd>
1121<p>
1122 Graphical alternative to git-commit.
1123</p>
1124</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591125<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231126<a href="git-clean.html">git-clean(1)</a>
Junio C Hamano54559c82006-04-13 07:45:121127</dt>
1128<dd>
1129<p>
1130 Remove untracked files from the working tree.
1131</p>
1132</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591133<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231134<a href="git-clone.html">git-clone(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231135</dt>
1136<dd>
1137<p>
Junio C Hamano4ec06712007-06-09 20:39:331138 Clone a repository into a new directory.
Junio C Hamano1a4e8412005-12-27 08:17:231139</p>
1140</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591141<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231142<a href="git-commit.html">git-commit(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231143</dt>
1144<dd>
1145<p>
1146 Record changes to the repository.
1147</p>
1148</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591149<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231150<a href="git-describe.html">git-describe(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501151</dt>
1152<dd>
1153<p>
Junio C Hamano68e72b72017-12-28 23:20:521154 Give an object a human readable name based on an available ref.
Junio C Hamano4ad294b2007-01-20 02:22:501155</p>
1156</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591157<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231158<a href="git-diff.html">git-diff(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231159</dt>
1160<dd>
1161<p>
1162 Show changes between commits, commit and working tree, etc.
1163</p>
1164</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591165<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231166<a href="git-fetch.html">git-fetch(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231167</dt>
1168<dd>
1169<p>
Junio C Hamano7c73c662007-01-19 00:37:501170 Download objects and refs from another repository.
Junio C Hamano1a4e8412005-12-27 08:17:231171</p>
1172</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591173<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231174<a href="git-format-patch.html">git-format-patch(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231175</dt>
1176<dd>
1177<p>
1178 Prepare patches for e-mail submission.
1179</p>
1180</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591181<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231182<a href="git-gc.html">git-gc(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501183</dt>
1184<dd>
1185<p>
1186 Cleanup unnecessary files and optimize the local repository.
1187</p>
1188</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591189<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231190<a href="git-grep.html">git-grep(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231191</dt>
1192<dd>
1193<p>
1194 Print lines matching a pattern.
1195</p>
1196</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591197<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231198<a href="git-gui.html">git-gui(1)</a>
Junio C Hamano58784fc2007-06-23 08:48:571199</dt>
1200<dd>
1201<p>
1202 A portable graphical interface to Git.
1203</p>
1204</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591205<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231206<a href="git-init.html">git-init(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501207</dt>
1208<dd>
1209<p>
Junio C Hamano076ffcc2013-02-06 05:13:211210 Create an empty Git repository or reinitialize an existing one.
Junio C Hamano4ad294b2007-01-20 02:22:501211</p>
1212</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591213<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231214<a href="git-log.html">git-log(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231215</dt>
1216<dd>
1217<p>
Junio C Hamano7c73c662007-01-19 00:37:501218 Show commit logs.
Junio C Hamano1a4e8412005-12-27 08:17:231219</p>
1220</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591221<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231222<a href="git-merge.html">git-merge(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231223</dt>
1224<dd>
1225<p>
Junio C Hamano7c73c662007-01-19 00:37:501226 Join two or more development histories together.
Junio C Hamano1a4e8412005-12-27 08:17:231227</p>
1228</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591229<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231230<a href="git-mv.html">git-mv(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231231</dt>
1232<dd>
1233<p>
1234 Move or rename a file, a directory, or a symlink.
1235</p>
1236</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591237<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231238<a href="git-notes.html">git-notes(1)</a>
Junio C Hamano3b70d3c2009-11-21 17:37:371239</dt>
1240<dd>
1241<p>
Junio C Hamanoa574a092010-06-13 19:57:101242 Add or inspect object notes.
Junio C Hamano3b70d3c2009-11-21 17:37:371243</p>
1244</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591245<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231246<a href="git-pull.html">git-pull(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231247</dt>
1248<dd>
1249<p>
Junio C Hamano8401f142013-07-12 22:47:461250 Fetch from and integrate with another repository or a local branch.
Junio C Hamano1a4e8412005-12-27 08:17:231251</p>
1252</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591253<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231254<a href="git-push.html">git-push(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231255</dt>
1256<dd>
1257<p>
1258 Update remote refs along with associated objects.
1259</p>
1260</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591261<dt class="hdlist1">
Junio C Hamano11ae3202018-08-20 20:15:421262<a href="git-range-diff.html">git-range-diff(1)</a>
1263</dt>
1264<dd>
1265<p>
1266 Compare two commit ranges (e.g. two versions of a branch).
1267</p>
1268</dd>
1269<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231270<a href="git-rebase.html">git-rebase(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231271</dt>
1272<dd>
1273<p>
Junio C Hamanodf97ffc2016-03-10 22:58:001274 Reapply commits on top of another base tip.
Junio C Hamano1a4e8412005-12-27 08:17:231275</p>
1276</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591277<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231278<a href="git-reset.html">git-reset(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231279</dt>
1280<dd>
1281<p>
1282 Reset current HEAD to the specified state.
1283</p>
1284</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591285<dt class="hdlist1">
Junio C Hamanoc9f11c22019-07-10 02:54:041286<a href="git-restore.html">git-restore(1)</a>
1287</dt>
1288<dd>
1289<p>
1290 Restore working tree files.
1291</p>
1292</dd>
1293<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231294<a href="git-revert.html">git-revert(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231295</dt>
1296<dd>
1297<p>
Junio C Hamano89a57342010-06-22 23:22:551298 Revert some existing commits.
Junio C Hamano1a4e8412005-12-27 08:17:231299</p>
1300</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591301<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231302<a href="git-rm.html">git-rm(1)</a>
Junio C Hamano54559c82006-04-13 07:45:121303</dt>
1304<dd>
1305<p>
1306 Remove files from the working tree and from the index.
1307</p>
1308</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591309<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231310<a href="git-shortlog.html">git-shortlog(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231311</dt>
1312<dd>
1313<p>
Junio C Hamano1aa40d22010-01-21 17:46:431314 Summarize <em>git log</em> output.
Junio C Hamano1a4e8412005-12-27 08:17:231315</p>
1316</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591317<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231318<a href="git-show.html">git-show(1)</a>
Junio C Hamano2b135272006-03-18 07:45:421319</dt>
1320<dd>
1321<p>
Junio C Hamano7c73c662007-01-19 00:37:501322 Show various types of objects.
Junio C Hamano2b135272006-03-18 07:45:421323</p>
1324</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591325<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231326<a href="git-stash.html">git-stash(1)</a>
Junio C Hamano1d90cb02007-07-03 07:05:311327</dt>
1328<dd>
1329<p>
1330 Stash the changes in a dirty working directory away.
1331</p>
1332</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591333<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231334<a href="git-status.html">git-status(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231335</dt>
1336<dd>
1337<p>
Junio C Hamano7c73c662007-01-19 00:37:501338 Show the working tree status.
Junio C Hamano1a4e8412005-12-27 08:17:231339</p>
1340</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591341<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231342<a href="git-submodule.html">git-submodule(1)</a>
Junio C Hamano38b693c2007-06-03 08:40:141343</dt>
1344<dd>
1345<p>
1346 Initialize, update or inspect submodules.
1347</p>
1348</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591349<dt class="hdlist1">
Junio C Hamanoc9f11c22019-07-10 02:54:041350<a href="git-switch.html">git-switch(1)</a>
1351</dt>
1352<dd>
1353<p>
1354 Switch branches.
1355</p>
1356</dd>
1357<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231358<a href="git-tag.html">git-tag(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501359</dt>
1360<dd>
1361<p>
Junio C Hamanodb450ba2007-01-21 08:57:141362 Create, list, delete or verify a tag object signed with GPG.
Junio C Hamano4ad294b2007-01-20 02:22:501363</p>
1364</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591365<dt class="hdlist1">
Junio C Hamanob5dd60f2015-07-13 21:48:051366<a href="git-worktree.html">git-worktree(1)</a>
1367</dt>
1368<dd>
1369<p>
Junio C Hamano9c512872015-08-12 21:59:251370 Manage multiple working trees.
Junio C Hamanob5dd60f2015-07-13 21:48:051371</p>
1372</dd>
1373<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231374<a href="gitk.html">gitk(1)</a>
Junio C Hamano0a16b952007-12-02 18:56:341375</dt>
1376<dd>
1377<p>
Junio C Hamano076ffcc2013-02-06 05:13:211378 The Git repository browser.
Junio C Hamano0a16b952007-12-02 18:56:341379</p>
1380</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311381</dl></div>
Junio C Hamano9d971152012-12-19 00:43:111382</div>
1383<div class="sect2">
1384<h3 id="_ancillary_commands">Ancillary Commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591385<div class="paragraph"><p>Manipulators:</p></div>
1386<div class="dlist"><dl>
1387<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231388<a href="git-config.html">git-config(1)</a>
Junio C Hamanob1d6e882007-08-11 08:30:161389</dt>
1390<dd>
1391<p>
1392 Get and set repository or global options.
1393</p>
1394</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591395<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231396<a href="git-fast-export.html">git-fast-export(1)</a>
Junio C Hamano58256872007-12-04 08:31:131397</dt>
1398<dd>
1399<p>
1400 Git data exporter.
1401</p>
1402</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591403<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231404<a href="git-fast-import.html">git-fast-import(1)</a>
Junio C Hamanodfc4ce72007-02-07 23:17:291405</dt>
1406<dd>
1407<p>
Junio C Hamano053827f2007-02-14 07:23:581408 Backend for fast Git data importers.
Junio C Hamanodfc4ce72007-02-07 23:17:291409</p>
1410</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591411<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231412<a href="git-filter-branch.html">git-filter-branch(1)</a>
Junio C Hamanobb0f4042007-07-04 06:41:401413</dt>
1414<dd>
1415<p>
1416 Rewrite branches.
1417</p>
1418</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591419<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231420<a href="git-mergetool.html">git-mergetool(1)</a>
Junio C Hamano103ad7f2007-03-14 11:19:261421</dt>
1422<dd>
1423<p>
1424 Run merge conflict resolution tools to resolve merge conflicts.
1425</p>
1426</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591427<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231428<a href="git-pack-refs.html">git-pack-refs(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501429</dt>
1430<dd>
1431<p>
1432 Pack heads and tags for efficient repository access.
1433</p>
1434</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591435<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231436<a href="git-prune.html">git-prune(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501437</dt>
1438<dd>
1439<p>
Junio C Hamano4ec06712007-06-09 20:39:331440 Prune all unreachable objects from the object database.
Junio C Hamano4ad294b2007-01-20 02:22:501441</p>
1442</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591443<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231444<a href="git-reflog.html">git-reflog(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501445</dt>
1446<dd>
1447<p>
1448 Manage reflog information.
1449</p>
1450</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591451<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231452<a href="git-remote.html">git-remote(1)</a>
Junio C Hamano053827f2007-02-14 07:23:581453</dt>
1454<dd>
1455<p>
Junio C Hamano5b3533d2014-02-27 23:07:151456 Manage set of tracked repositories.
Junio C Hamano053827f2007-02-14 07:23:581457</p>
1458</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591459<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231460<a href="git-repack.html">git-repack(1)</a>
Junio C Hamanob1d6e882007-08-11 08:30:161461</dt>
1462<dd>
1463<p>
1464 Pack unpacked objects in a repository.
1465</p>
1466</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591467<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231468<a href="git-replace.html">git-replace(1)</a>
Junio C Hamano55295992009-10-13 09:06:331469</dt>
1470<dd>
1471<p>
1472 Create, list, delete refs to replace objects.
1473</p>
1474</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311475</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:591476<div class="paragraph"><p>Interrogators:</p></div>
1477<div class="dlist"><dl>
1478<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231479<a href="git-annotate.html">git-annotate(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501480</dt>
1481<dd>
1482<p>
Junio C Hamano7924d5e2009-03-03 08:28:481483 Annotate file lines with commit information.
Junio C Hamano4ad294b2007-01-20 02:22:501484</p>
1485</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591486<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231487<a href="git-blame.html">git-blame(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501488</dt>
1489<dd>
1490<p>
1491 Show what revision and author last modified each line of a file.
1492</p>
1493</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591494<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231495<a href="git-count-objects.html">git-count-objects(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501496</dt>
1497<dd>
1498<p>
1499 Count unpacked number of objects and their disk consumption.
1500</p>
1501</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591502<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231503<a href="git-difftool.html">git-difftool(1)</a>
Junio C Hamano3bd66e92009-04-18 06:17:561504</dt>
1505<dd>
1506<p>
1507 Show changes using common diff tools.
1508</p>
1509</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591510<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231511<a href="git-fsck.html">git-fsck(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501512</dt>
1513<dd>
1514<p>
1515 Verifies the connectivity and validity of the objects in the database.
1516</p>
1517</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591518<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231519<a href="git-help.html">git-help(1)</a>
Junio C Hamano58256872007-12-04 08:31:131520</dt>
1521<dd>
1522<p>
Junio C Hamano076ffcc2013-02-06 05:13:211523 Display help information about Git.
Junio C Hamano58256872007-12-04 08:31:131524</p>
1525</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591526<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231527<a href="git-instaweb.html">git-instaweb(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501528</dt>
1529<dd>
1530<p>
1531 Instantly browse your working repository in gitweb.
1532</p>
1533</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591534<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231535<a href="git-merge-tree.html">git-merge-tree(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501536</dt>
1537<dd>
1538<p>
1539 Show three-way merge without touching index.
1540</p>
1541</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591542<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231543<a href="git-rerere.html">git-rerere(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501544</dt>
1545<dd>
1546<p>
1547 Reuse recorded resolution of conflicted merges.
1548</p>
1549</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591550<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231551<a href="git-show-branch.html">git-show-branch(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501552</dt>
1553<dd>
1554<p>
1555 Show branches and their commits.
1556</p>
1557</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591558<dt class="hdlist1">
Junio C Hamano56121c42014-07-10 23:23:351559<a href="git-verify-commit.html">git-verify-commit(1)</a>
1560</dt>
1561<dd>
1562<p>
1563 Check the GPG signature of commits.
1564</p>
1565</dd>
1566<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231567<a href="git-verify-tag.html">git-verify-tag(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231568</dt>
1569<dd>
1570<p>
Junio C Hamanob1d6e882007-08-11 08:30:161571 Check the GPG signature of tags.
Junio C Hamano1a4e8412005-12-27 08:17:231572</p>
1573</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591574<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231575<a href="git-whatchanged.html">git-whatchanged(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231576</dt>
1577<dd>
1578<p>
Junio C Hamano7c73c662007-01-19 00:37:501579 Show logs with difference each commit introduces.
Junio C Hamano1a4e8412005-12-27 08:17:231580</p>
1581</dd>
Junio C Hamano11821ed2011-10-19 18:42:091582<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231583<a href="gitweb.html">gitweb(1)</a>
Junio C Hamano11821ed2011-10-19 18:42:091584</dt>
1585<dd>
1586<p>
1587 Git web interface (web frontend to Git repositories).
1588</p>
1589</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311590</dl></div>
Junio C Hamano9d971152012-12-19 00:43:111591</div>
1592<div class="sect2">
1593<h3 id="_interacting_with_others">Interacting with Others</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591594<div class="paragraph"><p>These commands are to interact with foreign SCM and with other
Junio C Hamanoba4b9282008-07-06 05:20:311595people via patch over e-mail.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:591596<div class="dlist"><dl>
1597<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231598<a href="git-archimport.html">git-archimport(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231599</dt>
1600<dd>
1601<p>
Junio C Hamano32a75272018-10-16 07:37:351602 Import a GNU Arch repository into Git.
Junio C Hamano1a4e8412005-12-27 08:17:231603</p>
1604</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591605<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231606<a href="git-cvsexportcommit.html">git-cvsexportcommit(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231607</dt>
1608<dd>
1609<p>
1610 Export a single commit to a CVS checkout.
1611</p>
1612</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591613<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231614<a href="git-cvsimport.html">git-cvsimport(1)</a>
Junio C Hamano7c73c662007-01-19 00:37:501615</dt>
1616<dd>
1617<p>
1618 Salvage your data out of another SCM people love to hate.
1619</p>
1620</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591621<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231622<a href="git-cvsserver.html">git-cvsserver(1)</a>
Junio C Hamano54559c82006-04-13 07:45:121623</dt>
1624<dd>
1625<p>
Junio C Hamano076ffcc2013-02-06 05:13:211626 A CVS server emulator for Git.
Junio C Hamano54559c82006-04-13 07:45:121627</p>
1628</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591629<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231630<a href="git-imap-send.html">git-imap-send(1)</a>
Junio C Hamano52299462006-12-28 00:59:381631</dt>
1632<dd>
1633<p>
Junio C Hamano5cf43ca2008-08-20 09:14:141634 Send a collection of patches from stdin to an IMAP folder.
Junio C Hamano1a4e8412005-12-27 08:17:231635</p>
1636</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591637<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231638<a href="git-p4.html">git-p4(1)</a>
Junio C Hamano4eda1362012-04-23 20:55:491639</dt>
1640<dd>
1641<p>
1642 Import from and submit to Perforce repositories.
1643</p>
1644</dd>
1645<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231646<a href="git-quiltimport.html">git-quiltimport(1)</a>
Junio C Hamano33db4372006-06-07 19:51:451647</dt>
1648<dd>
1649<p>
1650 Applies a quilt patchset onto the current branch.
1651</p>
1652</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591653<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231654<a href="git-request-pull.html">git-request-pull(1)</a>
Junio C Hamano74640642006-12-27 10:59:551655</dt>
1656<dd>
1657<p>
Junio C Hamano4ad294b2007-01-20 02:22:501658 Generates a summary of pending changes.
Junio C Hamano74640642006-12-27 10:59:551659</p>
1660</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591661<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231662<a href="git-send-email.html">git-send-email(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:231663</dt>
1664<dd>
1665<p>
Junio C Hamano4ad294b2007-01-20 02:22:501666 Send a collection of patches as emails.
Junio C Hamano7c73c662007-01-19 00:37:501667</p>
1668</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591669<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231670<a href="git-svn.html">git-svn(1)</a>
Junio C Hamanob518f452006-08-04 00:18:061671</dt>
1672<dd>
1673<p>
Junio C Hamano076ffcc2013-02-06 05:13:211674 Bidirectional operation between a Subversion repository and Git.
Junio C Hamanob518f452006-08-04 00:18:061675</p>
1676</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311677</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:231678</div>
Junio C Hamanoc9f11c22019-07-10 02:54:041679<div class="sect2">
1680<h3 id="_reset_restore_and_revert">Reset, restore and revert</h3>
1681<div class="paragraph"><p>There are three commands with similar names: <code>git reset</code>,
1682<code>git restore</code> and <code>git revert</code>.</p></div>
1683<div class="ulist"><ul>
1684<li>
1685<p>
1686<a href="git-revert.html">git-revert(1)</a> is about making a new commit that reverts the
1687 changes made by other commits.
1688</p>
1689</li>
1690<li>
1691<p>
1692<a href="git-restore.html">git-restore(1)</a> is about restoring files in the working tree
1693 from either the index or another commit. This command does not
1694 update your branch. The command can also be used to restore files in
1695 the index from another commit.
1696</p>
1697</li>
1698<li>
1699<p>
1700<a href="git-reset.html">git-reset(1)</a> is about updating your branch, moving the tip
1701 in order to add or remove commits from the branch. This operation
1702 changes the commit history.
1703</p>
1704<div class="paragraph"><p><code>git reset</code> can also be used to restore the index, overlapping with
1705<code>git restore</code>.</p></div>
1706</li>
1707</ul></div>
1708</div>
Junio C Hamano9d971152012-12-19 00:43:111709</div>
1710</div>
1711<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:311712<h2 id="_low_level_commands_plumbing">Low-level commands (plumbing)</h2>
Junio C Hamanob19b4f02006-10-29 20:47:221713<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:211714<div class="paragraph"><p>Although Git includes its
Junio C Hamanob19b4f02006-10-29 20:47:221715own porcelain layer, its low-level commands are sufficient to support
1716development of alternative porcelains. Developers of such porcelains
Junio C Hamanoa28a9202012-06-21 07:08:231717might start by reading about <a href="git-update-index.html">git-update-index(1)</a> and
1718<a href="git-read-tree.html">git-read-tree(1)</a>.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:591719<div class="paragraph"><p>The interface (input, output, set of options and the semantics)
Junio C Hamano4ad294b2007-01-20 02:22:501720to these low-level commands are meant to be a lot more stable
1721than Porcelain level commands, because these commands are
1722primarily for scripted use. The interface to Porcelain commands
1723on the other hand are subject to change in order to improve the
Junio C Hamanoba4b9282008-07-06 05:20:311724end user experience.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:591725<div class="paragraph"><p>The following description divides
Junio C Hamano4ad294b2007-01-20 02:22:501726the low-level commands into commands that manipulate objects (in
Junio C Hamanob19b4f02006-10-29 20:47:221727the repository, index, and working tree), commands that interrogate and
1728compare objects, and commands that move objects and references between
Junio C Hamanoba4b9282008-07-06 05:20:311729repositories.</p></div>
Junio C Hamano9d971152012-12-19 00:43:111730<div class="sect2">
1731<h3 id="_manipulation_commands">Manipulation commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591732<div class="dlist"><dl>
1733<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231734<a href="git-apply.html">git-apply(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221735</dt>
1736<dd>
1737<p>
Junio C Hamano5706e0b2009-11-24 10:54:161738 Apply a patch to files and/or to the index.
Junio C Hamanob19b4f02006-10-29 20:47:221739</p>
1740</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591741<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231742<a href="git-checkout-index.html">git-checkout-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221743</dt>
1744<dd>
1745<p>
1746 Copy files from the index to the working tree.
1747</p>
1748</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591749<dt class="hdlist1">
Junio C Hamanoccb82522018-05-08 07:52:091750<a href="git-commit-graph.html">git-commit-graph(1)</a>
1751</dt>
1752<dd>
1753<p>
Junio C Hamano32a75272018-10-16 07:37:351754 Write and verify Git commit-graph files.
Junio C Hamanoccb82522018-05-08 07:52:091755</p>
1756</dd>
1757<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231758<a href="git-commit-tree.html">git-commit-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221759</dt>
1760<dd>
1761<p>
Junio C Hamano7c73c662007-01-19 00:37:501762 Create a new commit object.
Junio C Hamanob19b4f02006-10-29 20:47:221763</p>
1764</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591765<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231766<a href="git-hash-object.html">git-hash-object(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221767</dt>
1768<dd>
1769<p>
Junio C Hamano7c73c662007-01-19 00:37:501770 Compute object ID and optionally creates a blob from a file.
Junio C Hamanob19b4f02006-10-29 20:47:221771</p>
1772</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591773<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231774<a href="git-index-pack.html">git-index-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221775</dt>
1776<dd>
1777<p>
Junio C Hamano7c73c662007-01-19 00:37:501778 Build pack index file for an existing packed archive.
Junio C Hamanob19b4f02006-10-29 20:47:221779</p>
1780</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591781<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231782<a href="git-merge-file.html">git-merge-file(1)</a>
Junio C Hamano1de7bc62006-12-17 19:31:541783</dt>
1784<dd>
1785<p>
Junio C Hamano7c73c662007-01-19 00:37:501786 Run a three-way file merge.
Junio C Hamano1de7bc62006-12-17 19:31:541787</p>
1788</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591789<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231790<a href="git-merge-index.html">git-merge-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221791</dt>
1792<dd>
1793<p>
Junio C Hamano7c73c662007-01-19 00:37:501794 Run a merge for files needing merging.
Junio C Hamanob19b4f02006-10-29 20:47:221795</p>
1796</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591797<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231798<a href="git-mktag.html">git-mktag(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221799</dt>
1800<dd>
1801<p>
1802 Creates a tag object.
1803</p>
1804</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591805<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231806<a href="git-mktree.html">git-mktree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221807</dt>
1808<dd>
1809<p>
1810 Build a tree-object from ls-tree formatted text.
1811</p>
1812</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591813<dt class="hdlist1">
Junio C Hamano980e61e2018-09-17 22:45:521814<a href="git-multi-pack-index.html">git-multi-pack-index(1)</a>
1815</dt>
1816<dd>
1817<p>
1818 Write and verify multi-pack-indexes.
1819</p>
1820</dd>
1821<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231822<a href="git-pack-objects.html">git-pack-objects(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221823</dt>
1824<dd>
1825<p>
Junio C Hamano7c73c662007-01-19 00:37:501826 Create a packed archive of objects.
Junio C Hamanob19b4f02006-10-29 20:47:221827</p>
1828</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591829<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231830<a href="git-prune-packed.html">git-prune-packed(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221831</dt>
1832<dd>
1833<p>
1834 Remove extra objects that are already in pack files.
1835</p>
1836</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591837<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231838<a href="git-read-tree.html">git-read-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221839</dt>
1840<dd>
1841<p>
1842 Reads tree information into the index.
1843</p>
1844</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591845<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231846<a href="git-symbolic-ref.html">git-symbolic-ref(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221847</dt>
1848<dd>
1849<p>
Junio C Hamano4eb2b9c2012-11-15 21:12:291850 Read, modify and delete symbolic refs.
Junio C Hamanob19b4f02006-10-29 20:47:221851</p>
1852</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591853<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231854<a href="git-unpack-objects.html">git-unpack-objects(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221855</dt>
1856<dd>
1857<p>
Junio C Hamano7c73c662007-01-19 00:37:501858 Unpack objects from a packed archive.
Junio C Hamanob19b4f02006-10-29 20:47:221859</p>
1860</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591861<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231862<a href="git-update-index.html">git-update-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221863</dt>
1864<dd>
1865<p>
Junio C Hamano7c73c662007-01-19 00:37:501866 Register file contents in the working tree to the index.
Junio C Hamanob19b4f02006-10-29 20:47:221867</p>
1868</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591869<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231870<a href="git-update-ref.html">git-update-ref(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501871</dt>
1872<dd>
1873<p>
1874 Update the object name stored in a ref safely.
1875</p>
1876</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591877<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231878<a href="git-write-tree.html">git-write-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221879</dt>
1880<dd>
1881<p>
Junio C Hamano7c73c662007-01-19 00:37:501882 Create a tree object from the current index.
Junio C Hamanob19b4f02006-10-29 20:47:221883</p>
1884</dd>
Junio C Hamanoba4b9282008-07-06 05:20:311885</dl></div>
Junio C Hamano9d971152012-12-19 00:43:111886</div>
1887<div class="sect2">
1888<h3 id="_interrogation_commands">Interrogation commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:591889<div class="dlist"><dl>
1890<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231891<a href="git-cat-file.html">git-cat-file(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221892</dt>
1893<dd>
1894<p>
Junio C Hamano1de75722009-03-26 08:39:381895 Provide content or type and size information for repository objects.
Junio C Hamanob19b4f02006-10-29 20:47:221896</p>
1897</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591898<dt class="hdlist1">
Junio C Hamanoa4df8ed2018-10-26 06:37:131899<a href="git-cherry.html">git-cherry(1)</a>
1900</dt>
1901<dd>
1902<p>
1903 Find commits yet to be applied to upstream.
1904</p>
1905</dd>
1906<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231907<a href="git-diff-files.html">git-diff-files(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221908</dt>
1909<dd>
1910<p>
1911 Compares files in the working tree and the index.
1912</p>
1913</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591914<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231915<a href="git-diff-index.html">git-diff-index(1)</a>
Junio C Hamano7c73c662007-01-19 00:37:501916</dt>
1917<dd>
1918<p>
Junio C Hamano7e590a12013-06-02 23:46:521919 Compare a tree to the working tree or index.
Junio C Hamano7c73c662007-01-19 00:37:501920</p>
1921</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591922<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231923<a href="git-diff-tree.html">git-diff-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221924</dt>
1925<dd>
1926<p>
1927 Compares the content and mode of blobs found via two tree objects.
1928</p>
1929</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591930<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231931<a href="git-for-each-ref.html">git-for-each-ref(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221932</dt>
1933<dd>
1934<p>
1935 Output information on each ref.
1936</p>
1937</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591938<dt class="hdlist1">
Junio C Hamanoa4df8ed2018-10-26 06:37:131939<a href="git-get-tar-commit-id.html">git-get-tar-commit-id(1)</a>
1940</dt>
1941<dd>
1942<p>
1943 Extract commit ID from an archive created using git-archive.
1944</p>
1945</dd>
1946<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231947<a href="git-ls-files.html">git-ls-files(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221948</dt>
1949<dd>
1950<p>
Junio C Hamano7c73c662007-01-19 00:37:501951 Show information about files in the index and the working tree.
Junio C Hamanob19b4f02006-10-29 20:47:221952</p>
1953</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591954<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231955<a href="git-ls-remote.html">git-ls-remote(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:501956</dt>
1957<dd>
1958<p>
1959 List references in a remote repository.
1960</p>
1961</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591962<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231963<a href="git-ls-tree.html">git-ls-tree(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221964</dt>
1965<dd>
1966<p>
Junio C Hamano7c73c662007-01-19 00:37:501967 List the contents of a tree object.
Junio C Hamanob19b4f02006-10-29 20:47:221968</p>
1969</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591970<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231971<a href="git-merge-base.html">git-merge-base(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221972</dt>
1973<dd>
1974<p>
Junio C Hamano7c73c662007-01-19 00:37:501975 Find as good common ancestors as possible for a merge.
Junio C Hamanob19b4f02006-10-29 20:47:221976</p>
1977</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591978<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231979<a href="git-name-rev.html">git-name-rev(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221980</dt>
1981<dd>
1982<p>
1983 Find symbolic names for given revs.
1984</p>
1985</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591986<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231987<a href="git-pack-redundant.html">git-pack-redundant(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221988</dt>
1989<dd>
1990<p>
1991 Find redundant pack files.
1992</p>
1993</dd>
Junio C Hamano68cf15a2010-11-06 01:01:591994<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:231995<a href="git-rev-list.html">git-rev-list(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:221996</dt>
1997<dd>
1998<p>
1999 Lists commit objects in reverse chronological order.
2000</p>
2001</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592002<dt class="hdlist1">
Junio C Hamanoa4df8ed2018-10-26 06:37:132003<a href="git-rev-parse.html">git-rev-parse(1)</a>
2004</dt>
2005<dd>
2006<p>
2007 Pick out and massage parameters.
2008</p>
2009</dd>
2010<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232011<a href="git-show-index.html">git-show-index(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222012</dt>
2013<dd>
2014<p>
Junio C Hamano7c73c662007-01-19 00:37:502015 Show packed archive index.
Junio C Hamanob19b4f02006-10-29 20:47:222016</p>
2017</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592018<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232019<a href="git-show-ref.html">git-show-ref(1)</a>
Junio C Hamanod8c9d432006-11-07 07:19:132020</dt>
2021<dd>
2022<p>
2023 List references in a local repository.
2024</p>
2025</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592026<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232027<a href="git-unpack-file.html">git-unpack-file(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222028</dt>
2029<dd>
2030<p>
Junio C Hamano68cf15a2010-11-06 01:01:592031 Creates a temporary file with a blob&#8217;s contents.
Junio C Hamanob19b4f02006-10-29 20:47:222032</p>
2033</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592034<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232035<a href="git-var.html">git-var(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222036</dt>
2037<dd>
2038<p>
Junio C Hamano076ffcc2013-02-06 05:13:212039 Show a Git logical variable.
Junio C Hamanob19b4f02006-10-29 20:47:222040</p>
2041</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592042<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232043<a href="git-verify-pack.html">git-verify-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222044</dt>
2045<dd>
2046<p>
Junio C Hamano076ffcc2013-02-06 05:13:212047 Validate packed Git archive files.
Junio C Hamanob19b4f02006-10-29 20:47:222048</p>
2049</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312050</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:592051<div class="paragraph"><p>In general, the interrogate commands do not touch the files in
Junio C Hamanoba4b9282008-07-06 05:20:312052the working tree.</p></div>
Junio C Hamano9d971152012-12-19 00:43:112053</div>
2054<div class="sect2">
2055<h3 id="_synching_repositories">Synching repositories</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592056<div class="dlist"><dl>
2057<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232058<a href="git-daemon.html">git-daemon(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502059</dt>
2060<dd>
2061<p>
Junio C Hamano076ffcc2013-02-06 05:13:212062 A really simple server for Git repositories.
Junio C Hamano4ad294b2007-01-20 02:22:502063</p>
2064</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592065<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232066<a href="git-fetch-pack.html">git-fetch-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222067</dt>
2068<dd>
2069<p>
Junio C Hamano7c73c662007-01-19 00:37:502070 Receive missing objects from another repository.
Junio C Hamanob19b4f02006-10-29 20:47:222071</p>
2072</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592073<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232074<a href="git-http-backend.html">git-http-backend(1)</a>
Junio C Hamano096dde22009-12-26 23:14:112075</dt>
2076<dd>
2077<p>
2078 Server side implementation of Git over HTTP.
2079</p>
2080</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592081<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232082<a href="git-send-pack.html">git-send-pack(1)</a>
Junio C Hamano7c73c662007-01-19 00:37:502083</dt>
2084<dd>
2085<p>
Junio C Hamano076ffcc2013-02-06 05:13:212086 Push objects over Git protocol to another repository.
Junio C Hamanob19b4f02006-10-29 20:47:222087</p>
2088</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592089<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232090<a href="git-update-server-info.html">git-update-server-info(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222091</dt>
2092<dd>
2093<p>
Junio C Hamano7c73c662007-01-19 00:37:502094 Update auxiliary info file to help dumb servers.
Junio C Hamanob19b4f02006-10-29 20:47:222095</p>
2096</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312097</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:592098<div class="paragraph"><p>The following are helper commands used by the above; end users
Junio C Hamanoba4b9282008-07-06 05:20:312099typically do not use them directly.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592100<div class="dlist"><dl>
2101<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232102<a href="git-http-fetch.html">git-http-fetch(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502103</dt>
2104<dd>
2105<p>
Junio C Hamano076ffcc2013-02-06 05:13:212106 Download from a remote Git repository via HTTP.
Junio C Hamano4ad294b2007-01-20 02:22:502107</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-http-push.html">git-http-push(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502111</dt>
2112<dd>
2113<p>
2114 Push objects over HTTP/DAV to another repository.
2115</p>
2116</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592117<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232118<a href="git-parse-remote.html">git-parse-remote(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502119</dt>
2120<dd>
2121<p>
2122 Routines to help parsing remote repository access parameters.
2123</p>
2124</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592125<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232126<a href="git-receive-pack.html">git-receive-pack(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502127</dt>
2128<dd>
2129<p>
2130 Receive what is pushed into the repository.
2131</p>
2132</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592133<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232134<a href="git-shell.html">git-shell(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502135</dt>
2136<dd>
2137<p>
Junio C Hamano3b4609d2010-09-30 00:04:342138 Restricted login shell for Git-only SSH access.
Junio C Hamano4ad294b2007-01-20 02:22:502139</p>
2140</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592141<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232142<a href="git-upload-archive.html">git-upload-archive(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222143</dt>
2144<dd>
2145<p>
Junio C Hamano7c73c662007-01-19 00:37:502146 Send archive back to git-archive.
Junio C Hamanob19b4f02006-10-29 20:47:222147</p>
2148</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592149<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232150<a href="git-upload-pack.html">git-upload-pack(1)</a>
Junio C Hamanob19b4f02006-10-29 20:47:222151</dt>
2152<dd>
2153<p>
Junio C Hamano7c73c662007-01-19 00:37:502154 Send objects packed back to git-fetch-pack.
Junio C Hamanob19b4f02006-10-29 20:47:222155</p>
2156</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312157</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112158</div>
2159<div class="sect2">
2160<h3 id="_internal_helper_commands">Internal helper commands</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592161<div class="paragraph"><p>These are internal helper commands used by other commands; end
Junio C Hamanoba4b9282008-07-06 05:20:312162users typically do not use them directly.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592163<div class="dlist"><dl>
2164<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232165<a href="git-check-attr.html">git-check-attr(1)</a>
Junio C Hamanoe90436a2007-04-22 07:22:132166</dt>
2167<dd>
2168<p>
Junio C Hamano9bd39c42008-11-13 01:54:442169 Display gitattributes information.
Junio C Hamanoe90436a2007-04-22 07:22:132170</p>
2171</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592172<dt class="hdlist1">
Junio C Hamano36d52292013-01-25 21:32:362173<a href="git-check-ignore.html">git-check-ignore(1)</a>
2174</dt>
2175<dd>
2176<p>
2177 Debug gitignore / exclude files.
2178</p>
2179</dd>
2180<dt class="hdlist1">
Junio C Hamano58f587a2013-07-22 19:20:592181<a href="git-check-mailmap.html">git-check-mailmap(1)</a>
2182</dt>
2183<dd>
2184<p>
2185 Show canonical names and email addresses of contacts.
2186</p>
2187</dd>
2188<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232189<a href="git-check-ref-format.html">git-check-ref-format(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502190</dt>
2191<dd>
2192<p>
Junio C Hamano1de75722009-03-26 08:39:382193 Ensures that a reference name is well formed.
Junio C Hamano4ad294b2007-01-20 02:22:502194</p>
2195</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592196<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232197<a href="git-column.html">git-column(1)</a>
Junio C Hamano22700fb2012-05-03 23:07:252198</dt>
2199<dd>
2200<p>
2201 Display data in columns.
2202</p>
2203</dd>
2204<dt class="hdlist1">
Junio C Hamano62e79372012-08-08 22:53:352205<a href="git-credential.html">git-credential(1)</a>
2206</dt>
2207<dd>
2208<p>
2209 Retrieve and store user credentials.
2210</p>
2211</dd>
2212<dt class="hdlist1">
Junio C Hamanod0316112012-08-22 19:55:292213<a href="git-credential-cache.html">git-credential-cache(1)</a>
2214</dt>
2215<dd>
2216<p>
2217 Helper to temporarily store passwords in memory.
2218</p>
2219</dd>
2220<dt class="hdlist1">
2221<a href="git-credential-store.html">git-credential-store(1)</a>
2222</dt>
2223<dd>
2224<p>
2225 Helper to store credentials on disk.
2226</p>
2227</dd>
2228<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232229<a href="git-fmt-merge-msg.html">git-fmt-merge-msg(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502230</dt>
2231<dd>
2232<p>
2233 Produce a merge commit message.
2234</p>
2235</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592236<dt class="hdlist1">
Junio C Hamano4c43d652014-10-20 21:14:292237<a href="git-interpret-trailers.html">git-interpret-trailers(1)</a>
2238</dt>
2239<dd>
2240<p>
Junio C Hamanob5513772019-04-22 03:38:392241 Add or parse structured information in commit messages.
Junio C Hamano4c43d652014-10-20 21:14:292242</p>
2243</dd>
2244<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232245<a href="git-mailinfo.html">git-mailinfo(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502246</dt>
2247<dd>
2248<p>
2249 Extracts patch and authorship from a single e-mail message.
2250</p>
2251</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592252<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232253<a href="git-mailsplit.html">git-mailsplit(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502254</dt>
2255<dd>
2256<p>
2257 Simple UNIX mbox splitter program.
2258</p>
2259</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592260<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232261<a href="git-merge-one-file.html">git-merge-one-file(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502262</dt>
2263<dd>
2264<p>
2265 The standard helper program to use with git-merge-index.
2266</p>
2267</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592268<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232269<a href="git-patch-id.html">git-patch-id(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502270</dt>
2271<dd>
2272<p>
2273 Compute unique ID for a patch.
2274</p>
2275</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592276<dt class="hdlist1">
Junio C Hamanod0316112012-08-22 19:55:292277<a href="git-sh-i18n.html">git-sh-i18n(1)</a>
2278</dt>
2279<dd>
2280<p>
2281 Git&#8217;s i18n setup code for shell scripts.
2282</p>
2283</dd>
2284<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232285<a href="git-sh-setup.html">git-sh-setup(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502286</dt>
2287<dd>
2288<p>
Junio C Hamano076ffcc2013-02-06 05:13:212289 Common Git shell script setup code.
Junio C Hamano4ad294b2007-01-20 02:22:502290</p>
2291</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592292<dt class="hdlist1">
Junio C Hamanoa28a9202012-06-21 07:08:232293<a href="git-stripspace.html">git-stripspace(1)</a>
Junio C Hamano4ad294b2007-01-20 02:22:502294</dt>
2295<dd>
2296<p>
Junio C Hamano0df92712011-12-21 22:30:442297 Remove unnecessary whitespace.
Junio C Hamano4ad294b2007-01-20 02:22:502298</p>
2299</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312300</dl></div>
Junio C Hamanob19b4f02006-10-29 20:47:222301</div>
Junio C Hamano9d971152012-12-19 00:43:112302</div>
2303</div>
2304<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312305<h2 id="_configuration_mechanism">Configuration Mechanism</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232306<div class="sectionbody">
Junio C Hamano2da4ac42013-02-19 00:41:172307<div class="paragraph"><p>Git uses a simple text format to store customizations that are per
2308repository and are per user. Such a configuration file may look
2309like this:</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232310<div class="listingblock">
2311<div class="content">
Junio C Hamanoac12f0e2014-09-19 22:32:512312<pre><code>#
Junio C Hamano1a4e8412005-12-27 08:17:232313# A '#' or ';' character indicates a comment.
2314#
2315
2316; core variables
2317[core]
2318 ; Don't trust file modes
2319 filemode = false
2320
2321; user identity
2322[user]
2323 name = "Junio C Hamano"
Junio C Hamanoac12f0e2014-09-19 22:32:512324 email = "gitster@pobox.com"</code></pre>
Junio C Hamano1a4e8412005-12-27 08:17:232325</div></div>
Junio C Hamano68cf15a2010-11-06 01:01:592326<div class="paragraph"><p>Various commands read from the configuration file and adjust
Junio C Hamanoa28a9202012-06-21 07:08:232327their operation accordingly. See <a href="git-config.html">git-config(1)</a> for a
Junio C Hamano2da4ac42013-02-19 00:41:172328list and more details about the configuration mechanism.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232329</div>
Junio C Hamano9d971152012-12-19 00:43:112330</div>
2331<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312332<h2 id="_identifier_terminology">Identifier Terminology</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232333<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:592334<div class="dlist"><dl>
2335<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232336&lt;object&gt;
2337</dt>
2338<dd>
2339<p>
2340 Indicates the object name for any type of object.
2341</p>
2342</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592343<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232344&lt;blob&gt;
2345</dt>
2346<dd>
2347<p>
2348 Indicates a blob object name.
2349</p>
2350</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592351<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232352&lt;tree&gt;
2353</dt>
2354<dd>
2355<p>
2356 Indicates a tree object name.
2357</p>
2358</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592359<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232360&lt;commit&gt;
2361</dt>
2362<dd>
2363<p>
2364 Indicates a commit object name.
2365</p>
2366</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592367<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232368&lt;tree-ish&gt;
2369</dt>
2370<dd>
2371<p>
2372 Indicates a tree, commit or tag object name. A
2373 command that takes a &lt;tree-ish&gt; argument ultimately wants to
2374 operate on a &lt;tree&gt; object but automatically dereferences
2375 &lt;commit&gt; and &lt;tag&gt; objects that point at a &lt;tree&gt;.
2376</p>
2377</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592378<dt class="hdlist1">
Junio C Hamano60f8aa82007-03-06 09:58:262379&lt;commit-ish&gt;
2380</dt>
2381<dd>
2382<p>
2383 Indicates a commit or tag object name. A
2384 command that takes a &lt;commit-ish&gt; argument ultimately wants to
2385 operate on a &lt;commit&gt; object but automatically dereferences
2386 &lt;tag&gt; objects that point at a &lt;commit&gt;.
2387</p>
2388</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592389<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232390&lt;type&gt;
2391</dt>
2392<dd>
2393<p>
2394 Indicates that an object type is required.
Junio C Hamanoac12f0e2014-09-19 22:32:512395 Currently one of: <code>blob</code>, <code>tree</code>, <code>commit</code>, or <code>tag</code>.
Junio C Hamano1a4e8412005-12-27 08:17:232396</p>
2397</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592398<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232399&lt;file&gt;
2400</dt>
2401<dd>
2402<p>
2403 Indicates a filename - almost always relative to the
Junio C Hamanoac12f0e2014-09-19 22:32:512404 root of the tree structure <code>GIT_INDEX_FILE</code> describes.
Junio C Hamano1a4e8412005-12-27 08:17:232405</p>
2406</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312407</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:232408</div>
Junio C Hamano9d971152012-12-19 00:43:112409</div>
2410<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312411<h2 id="_symbolic_identifiers">Symbolic Identifiers</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232412<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:212413<div class="paragraph"><p>Any Git command accepting any &lt;object&gt; can also use the following
Junio C Hamanoba4b9282008-07-06 05:20:312414symbolic notation:</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592415<div class="dlist"><dl>
2416<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232417HEAD
2418</dt>
2419<dd>
2420<p>
Junio C Hamano360e3a12011-07-13 23:51:562421 indicates the head of the current branch.
Junio C Hamano1a4e8412005-12-27 08:17:232422</p>
2423</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592424<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232425&lt;tag&gt;
2426</dt>
2427<dd>
2428<p>
2429 a valid tag <em>name</em>
Junio C Hamanoac12f0e2014-09-19 22:32:512430 (i.e. a <code>refs/tags/&lt;tag&gt;</code> reference).
Junio C Hamano1a4e8412005-12-27 08:17:232431</p>
2432</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592433<dt class="hdlist1">
Junio C Hamano1a4e8412005-12-27 08:17:232434&lt;head&gt;
2435</dt>
2436<dd>
2437<p>
2438 a valid head <em>name</em>
Junio C Hamanoac12f0e2014-09-19 22:32:512439 (i.e. a <code>refs/heads/&lt;head&gt;</code> reference).
Junio C Hamano1a4e8412005-12-27 08:17:232440</p>
2441</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312442</dl></div>
Junio C Hamano68cf15a2010-11-06 01:01:592443<div class="paragraph"><p>For a more complete list of ways to spell object names, see
Junio C Hamanoa28a9202012-06-21 07:08:232444"SPECIFYING REVISIONS" section in <a href="gitrevisions.html">gitrevisions(7)</a>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232445</div>
Junio C Hamano9d971152012-12-19 00:43:112446</div>
2447<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312448<h2 id="_file_directory_structure">File/Directory Structure</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232449<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:232450<div class="paragraph"><p>Please see the <a href="gitrepository-layout.html">gitrepository-layout(5)</a> document.</p></div>
2451<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:592452<div class="paragraph"><p>Higher level SCMs may provide and manage additional information in the
Junio C Hamanoac12f0e2014-09-19 22:32:512453<code>$GIT_DIR</code>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232454</div>
Junio C Hamano9d971152012-12-19 00:43:112455</div>
2456<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312457<h2 id="_terminology">Terminology</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232458<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:232459<div class="paragraph"><p>Please see <a href="gitglossary.html">gitglossary(7)</a>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232460</div>
Junio C Hamano9d971152012-12-19 00:43:112461</div>
2462<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:312463<h2 id="_environment_variables">Environment Variables</h2>
Junio C Hamano1a4e8412005-12-27 08:17:232464<div class="sectionbody">
Junio C Hamano076ffcc2013-02-06 05:13:212465<div class="paragraph"><p>Various Git commands use the following environment variables:</p></div>
Junio C Hamano9d971152012-12-19 00:43:112466<div class="sect2">
Junio C Hamano076ffcc2013-02-06 05:13:212467<h3 id="_the_git_repository">The Git Repository</h3>
2468<div class="paragraph"><p>These environment variables apply to <em>all</em> core Git commands. Nb: it
Junio C Hamano1a4e8412005-12-27 08:17:232469is worth noting that they may be used/overridden by SCMS sitting above
Junio C Hamanod7ed4042015-08-03 19:43:002470Git so take care if using a foreign front-end.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:592471<div class="dlist"><dl>
2472<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052473<code>GIT_INDEX_FILE</code>
Junio C Hamano1a4e8412005-12-27 08:17:232474</dt>
2475<dd>
2476<p>
2477 This environment allows the specification of an alternate
Junio C Hamanoac12f0e2014-09-19 22:32:512478 index file. If not specified, the default of <code>$GIT_DIR/index</code>
Junio C Hamano1a4e8412005-12-27 08:17:232479 is used.
2480</p>
2481</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592482<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052483<code>GIT_INDEX_VERSION</code>
Junio C Hamano81703b22014-03-14 22:00:272484</dt>
2485<dd>
2486<p>
2487 This environment variable allows the specification of an index
2488 version for new repositories. It won&#8217;t affect existing index
Junio C Hamanoef57d1e2015-03-25 21:23:002489 files. By default index file version 2 or 3 is used. See
2490 <a href="git-update-index.html">git-update-index(1)</a> for more information.
Junio C Hamano81703b22014-03-14 22:00:272491</p>
2492</dd>
2493<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052494<code>GIT_OBJECT_DIRECTORY</code>
Junio C Hamano1a4e8412005-12-27 08:17:232495</dt>
2496<dd>
2497<p>
2498 If the object storage directory is specified via this
2499 environment variable then the sha1 directories are created
Junio C Hamanoac12f0e2014-09-19 22:32:512500 underneath - otherwise the default <code>$GIT_DIR/objects</code>
Junio C Hamano1a4e8412005-12-27 08:17:232501 directory is used.
2502</p>
2503</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592504<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052505<code>GIT_ALTERNATE_OBJECT_DIRECTORIES</code>
Junio C Hamano1a4e8412005-12-27 08:17:232506</dt>
2507<dd>
2508<p>
Junio C Hamano076ffcc2013-02-06 05:13:212509 Due to the immutable nature of Git objects, old objects can be
Junio C Hamano1a4e8412005-12-27 08:17:232510 archived into shared, read-only directories. This variable
Junio C Hamano05bf9c52008-07-03 09:21:582511 specifies a ":" separated (on Windows ";" separated) list
Junio C Hamano076ffcc2013-02-06 05:13:212512 of Git object directories which can be used to search for Git
Junio C Hamano05bf9c52008-07-03 09:21:582513 objects. New objects will not be written to these directories.
Junio C Hamano1a4e8412005-12-27 08:17:232514</p>
Junio C Hamano94d00a52018-10-30 07:34:402515<div class="paragraph"><p>Entries that begin with <code>"</code> (double-quote) will be interpreted
Junio C Hamano9ed6ab22016-12-21 23:24:112516as C-style quoted paths, removing leading and trailing
2517double-quotes and respecting backslash escapes. E.g., the value
Junio C Hamano94d00a52018-10-30 07:34:402518<code>"path-with-\"-and-:-in-it":vanilla-path</code> has two paths:
2519<code>path-with-"-and-:-in-it</code> and <code>vanilla-path</code>.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:232520</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592521<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052522<code>GIT_DIR</code>
Junio C Hamano1a4e8412005-12-27 08:17:232523</dt>
2524<dd>
2525<p>
Junio C Hamano042f2142016-06-27 18:05:052526 If the <code>GIT_DIR</code> environment variable is set then it
Junio C Hamanoac12f0e2014-09-19 22:32:512527 specifies a path to use instead of the default <code>.git</code>
Junio C Hamano1a4e8412005-12-27 08:17:232528 for the base of the repository.
Junio C Hamano92d80372016-07-13 22:00:052529 The <code>--git-dir</code> command-line option also sets this value.
Junio C Hamano1a4e8412005-12-27 08:17:232530</p>
2531</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592532<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052533<code>GIT_WORK_TREE</code>
Junio C Hamanod526ba92007-07-02 00:17:422534</dt>
2535<dd>
2536<p>
Junio C Hamanof1f5a7b2013-06-11 22:23:522537 Set the path to the root of the working tree.
Junio C Hamano92d80372016-07-13 22:00:052538 This can also be controlled by the <code>--work-tree</code> command-line
Junio C Hamanod526ba92007-07-02 00:17:422539 option and the core.worktree configuration variable.
2540</p>
2541</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592542<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052543<code>GIT_NAMESPACE</code>
Junio C Hamanof7279012011-08-18 06:13:132544</dt>
2545<dd>
2546<p>
Junio C Hamano076ffcc2013-02-06 05:13:212547 Set the Git namespace; see <a href="gitnamespaces.html">gitnamespaces(7)</a> for details.
Junio C Hamano92d80372016-07-13 22:00:052548 The <code>--namespace</code> command-line option also sets this value.
Junio C Hamanof7279012011-08-18 06:13:132549</p>
2550</dd>
2551<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052552<code>GIT_CEILING_DIRECTORIES</code>
Junio C Hamano15048272008-07-07 22:10:482553</dt>
2554<dd>
2555<p>
Junio C Hamano68061622013-03-01 22:13:372556 This should be a colon-separated list of absolute paths. If
2557 set, it is a list of directories that Git should not chdir up
2558 into while looking for a repository directory (useful for
2559 excluding slow-loading network directories). It will not
2560 exclude the current working directory or a GIT_DIR set on the
2561 command line or in the environment. Normally, Git has to read
2562 the entries in this list and resolve any symlink that
2563 might be present in order to compare them with the current
2564 directory. However, if even this access is slow, you
2565 can add an empty entry to the list to tell Git that the
2566 subsequent entries are not symlinks and needn&#8217;t be resolved;
2567 e.g.,
Junio C Hamano042f2142016-06-27 18:05:052568 <code>GIT_CEILING_DIRECTORIES=/maybe/symlink::/very/slow/non/symlink</code>.
Junio C Hamano15048272008-07-07 22:10:482569</p>
2570</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592571<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052572<code>GIT_DISCOVERY_ACROSS_FILESYSTEM</code>
Junio C Hamanocc7636a2010-05-21 14:57:532573</dt>
2574<dd>
2575<p>
2576 When run in a directory that does not have ".git" repository
Junio C Hamano076ffcc2013-02-06 05:13:212577 directory, Git tries to find such a directory in the parent
Junio C Hamanocc7636a2010-05-21 14:57:532578 directories to find the top of the working tree, but by default it
2579 does not cross filesystem boundaries. This environment variable
Junio C Hamano076ffcc2013-02-06 05:13:212580 can be set to true to tell Git not to stop at filesystem
Junio C Hamano042f2142016-06-27 18:05:052581 boundaries. Like <code>GIT_CEILING_DIRECTORIES</code>, this will not affect
2582 an explicit repository directory set via <code>GIT_DIR</code> or on the
Junio C Hamanocc7636a2010-05-21 14:57:532583 command line.
2584</p>
2585</dd>
Junio C Hamano4cc4a842015-05-11 22:41:022586<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052587<code>GIT_COMMON_DIR</code>
Junio C Hamano4cc4a842015-05-11 22:41:022588</dt>
2589<dd>
2590<p>
2591 If this variable is set to a path, non-worktree files that are
2592 normally in $GIT_DIR will be taken from this path
2593 instead. Worktree-specific files such as HEAD or index are
2594 taken from $GIT_DIR. See <a href="gitrepository-layout.html">gitrepository-layout(5)</a> and
Junio C Hamano1e4fff22015-07-17 22:44:482595 <a href="git-worktree.html">git-worktree(1)</a> for
Junio C Hamano4cc4a842015-05-11 22:41:022596 details. This variable has lower precedence than other path
2597 variables such as GIT_INDEX_FILE, GIT_OBJECT_DIRECTORY&#8230;
2598</p>
2599</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312600</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112601</div>
2602<div class="sect2">
Junio C Hamano076ffcc2013-02-06 05:13:212603<h3 id="_git_commits">Git Commits</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592604<div class="dlist"><dl>
2605<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052606<code>GIT_AUTHOR_NAME</code>
Junio C Hamano1a4e8412005-12-27 08:17:232607</dt>
Junio C Hamano68cf15a2010-11-06 01:01:592608<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052609<code>GIT_AUTHOR_EMAIL</code>
Junio C Hamano1a4e8412005-12-27 08:17:232610</dt>
Junio C Hamano68cf15a2010-11-06 01:01:592611<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052612<code>GIT_AUTHOR_DATE</code>
Junio C Hamano1a4e8412005-12-27 08:17:232613</dt>
Junio C Hamano68cf15a2010-11-06 01:01:592614<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052615<code>GIT_COMMITTER_NAME</code>
Junio C Hamano1a4e8412005-12-27 08:17:232616</dt>
Junio C Hamano68cf15a2010-11-06 01:01:592617<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052618<code>GIT_COMMITTER_EMAIL</code>
Junio C Hamano1a4e8412005-12-27 08:17:232619</dt>
Junio C Hamano68cf15a2010-11-06 01:01:592620<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052621<code>GIT_COMMITTER_DATE</code>
Junio C Hamano469d60e2007-04-29 18:30:342622</dt>
Junio C Hamano68cf15a2010-11-06 01:01:592623<dt class="hdlist1">
Junio C Hamano469d60e2007-04-29 18:30:342624<em>EMAIL</em>
2625</dt>
Junio C Hamano1a4e8412005-12-27 08:17:232626<dd>
2627<p>
Junio C Hamanoa28a9202012-06-21 07:08:232628 see <a href="git-commit-tree.html">git-commit-tree(1)</a>
Junio C Hamano1a4e8412005-12-27 08:17:232629</p>
2630</dd>
Junio C Hamanoba4b9282008-07-06 05:20:312631</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112632</div>
2633<div class="sect2">
Junio C Hamano076ffcc2013-02-06 05:13:212634<h3 id="_git_diffs">Git Diffs</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592635<div class="dlist"><dl>
2636<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052637<code>GIT_DIFF_OPTS</code>
Junio C Hamano1a4e8412005-12-27 08:17:232638</dt>
Junio C Hamano1c437122006-11-28 02:22:252639<dd>
2640<p>
2641 Only valid setting is "--unified=??" or "-u??" to set the
2642 number of context lines shown when a unified diff is created.
2643 This takes precedence over any "-U" or "--unified" option
Junio C Hamano076ffcc2013-02-06 05:13:212644 value passed on the Git diff command line.
Junio C Hamano1c437122006-11-28 02:22:252645</p>
2646</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592647<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052648<code>GIT_EXTERNAL_DIFF</code>
Junio C Hamano1a4e8412005-12-27 08:17:232649</dt>
2650<dd>
2651<p>
Junio C Hamano042f2142016-06-27 18:05:052652 When the environment variable <code>GIT_EXTERNAL_DIFF</code> is set, the
Junio C Hamano1c437122006-11-28 02:22:252653 program named by it is called, instead of the diff invocation
2654 described above. For a path that is added, removed, or modified,
Junio C Hamano042f2142016-06-27 18:05:052655 <code>GIT_EXTERNAL_DIFF</code> is called with 7 parameters:
Junio C Hamano1a4e8412005-12-27 08:17:232656</p>
Junio C Hamano1c437122006-11-28 02:22:252657<div class="literalblock">
2658<div class="content">
Junio C Hamanoac12f0e2014-09-19 22:32:512659<pre><code>path old-file old-hex old-mode new-file new-hex new-mode</code></pre>
Junio C Hamano1c437122006-11-28 02:22:252660</div></div>
Junio C Hamano68cf15a2010-11-06 01:01:592661<div class="paragraph"><p>where:</p></div>
2662</dd>
2663<dt class="hdlist1">
Junio C Hamano1c437122006-11-28 02:22:252664&lt;old|new&gt;-file
Junio C Hamano68cf15a2010-11-06 01:01:592665</dt>
2666<dd>
2667<p>
Junio C Hamano1c437122006-11-28 02:22:252668are files GIT_EXTERNAL_DIFF can use to read the
2669 contents of &lt;old|new&gt;,
Junio C Hamano68cf15a2010-11-06 01:01:592670</p>
2671</dd>
2672<dt class="hdlist1">
Junio C Hamano1c437122006-11-28 02:22:252673&lt;old|new&gt;-hex
Junio C Hamano68cf15a2010-11-06 01:01:592674</dt>
2675<dd>
2676<p>
Junio C Hamanoe3f080d2013-04-22 02:27:132677are the 40-hexdigit SHA-1 hashes,
Junio C Hamano68cf15a2010-11-06 01:01:592678</p>
2679</dd>
2680<dt class="hdlist1">
Junio C Hamano1c437122006-11-28 02:22:252681&lt;old|new&gt;-mode
Junio C Hamano68cf15a2010-11-06 01:01:592682</dt>
2683<dd>
2684<p>
Junio C Hamano1c437122006-11-28 02:22:252685are the octal representation of the file modes.
Junio C Hamano68cf15a2010-11-06 01:01:592686</p>
Junio C Hamanof75a9402011-04-14 23:39:232687<div class="paragraph"><p>The file parameters can point at the user&#8217;s working file
Junio C Hamanoac12f0e2014-09-19 22:32:512688(e.g. <code>new-file</code> in "git-diff-files"), <code>/dev/null</code> (e.g. <code>old-file</code>
2689when a new file is added), or a temporary file (e.g. <code>old-file</code> in the
Junio C Hamano042f2142016-06-27 18:05:052690index). <code>GIT_EXTERNAL_DIFF</code> should not worry about unlinking the
2691temporary file --- it is removed when <code>GIT_EXTERNAL_DIFF</code> exits.</p></div>
2692<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:312693parameter, &lt;path&gt;.</p></div>
Junio C Hamano042f2142016-06-27 18:05:052694<div class="paragraph"><p>For each path <code>GIT_EXTERNAL_DIFF</code> is called, two environment variables,
2695<code>GIT_DIFF_PATH_COUNTER</code> and <code>GIT_DIFF_PATH_TOTAL</code> are set.</p></div>
Junio C Hamanob1acf022013-12-28 00:33:162696</dd>
2697<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052698<code>GIT_DIFF_PATH_COUNTER</code>
Junio C Hamanob1acf022013-12-28 00:33:162699</dt>
2700<dd>
2701<p>
2702 A 1-based counter incremented by one for every path.
2703</p>
2704</dd>
2705<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052706<code>GIT_DIFF_PATH_TOTAL</code>
Junio C Hamanob1acf022013-12-28 00:33:162707</dt>
2708<dd>
2709<p>
2710 The total number of paths.
2711</p>
Junio C Hamanof75a9402011-04-14 23:39:232712</dd>
2713</dl></div>
Junio C Hamano9d971152012-12-19 00:43:112714</div>
2715<div class="sect2">
2716<h3 id="_other">other</h3>
Junio C Hamano68cf15a2010-11-06 01:01:592717<div class="dlist"><dl>
2718<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052719<code>GIT_MERGE_VERBOSITY</code>
Junio C Hamano1e6e0062007-07-13 05:33:252720</dt>
2721<dd>
2722<p>
2723 A number controlling the amount of output shown by
2724 the recursive merge strategy. Overrides merge.verbosity.
Junio C Hamanoa28a9202012-06-21 07:08:232725 See <a href="git-merge.html">git-merge(1)</a>
Junio C Hamano1e6e0062007-07-13 05:33:252726</p>
2727</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592728<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052729<code>GIT_PAGER</code>
Junio C Hamano85e45fa2006-08-13 07:47:412730</dt>
2731<dd>
2732<p>
Junio C Hamanoac12f0e2014-09-19 22:32:512733 This environment variable overrides <code>$PAGER</code>. If it is set
Junio C Hamano076ffcc2013-02-06 05:13:212734 to an empty string or to the value "cat", Git will not launch
Junio C Hamanoac12f0e2014-09-19 22:32:512735 a pager. See also the <code>core.pager</code> option in
Junio C Hamanoa28a9202012-06-21 07:08:232736 <a href="git-config.html">git-config(1)</a>.
Junio C Hamano85e45fa2006-08-13 07:47:412737</p>
2738</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592739<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052740<code>GIT_EDITOR</code>
Junio C Hamano0ff98162012-03-31 18:19:092741</dt>
2742<dd>
2743<p>
Junio C Hamanoac12f0e2014-09-19 22:32:512744 This environment variable overrides <code>$EDITOR</code> and <code>$VISUAL</code>.
Junio C Hamano076ffcc2013-02-06 05:13:212745 It is used by several Git commands when, on interactive mode,
Junio C Hamanoa28a9202012-06-21 07:08:232746 an editor is to be launched. See also <a href="git-var.html">git-var(1)</a>
Junio C Hamanoac12f0e2014-09-19 22:32:512747 and the <code>core.editor</code> option in <a href="git-config.html">git-config(1)</a>.
Junio C Hamano0ff98162012-03-31 18:19:092748</p>
2749</dd>
2750<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052751<code>GIT_SSH</code>
Junio C Hamano4cd1c0e2007-08-06 04:39:142752</dt>
Junio C Hamanofad84122014-12-05 23:38:062753<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052754<code>GIT_SSH_COMMAND</code>
Junio C Hamanofad84122014-12-05 23:38:062755</dt>
Junio C Hamano4cd1c0e2007-08-06 04:39:142756<dd>
2757<p>
Junio C Hamanofad84122014-12-05 23:38:062758 If either of these environment variables is set then <em>git fetch</em>
2759 and <em>git push</em> will use the specified command instead of <em>ssh</em>
2760 when they need to connect to a remote system.
Junio C Hamano912712b2017-12-06 18:04:012761 The command-line parameters passed to the configured command are
2762 determined by the ssh variant. See <code>ssh.variant</code> option in
2763 <a href="git-config.html">git-config(1)</a> for details.
Junio C Hamano4cd1c0e2007-08-06 04:39:142764</p>
Junio C Hamano6b7d2152019-04-16 12:51:152765<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:062766by the shell, which allows additional arguments to be included.
2767<code>$GIT_SSH</code> on the other hand must be just the path to a program
2768(which can be a wrapper shell script, if additional arguments are
2769needed).</p></div>
Junio C Hamano6b7d2152019-04-16 12:51:152770<div class="paragraph"><p>Usually it is easier to configure any desired options through your
Junio C Hamanoac12f0e2014-09-19 22:32:512771personal <code>.ssh/config</code> file. Please consult your ssh documentation
Junio C Hamanoba4b9282008-07-06 05:20:312772for further details.</p></div>
Junio C Hamano6b7d2152019-04-16 12:51:152773</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592774<dt class="hdlist1">
Junio C Hamanocbe0eb22017-02-27 23:37:492775<code>GIT_SSH_VARIANT</code>
2776</dt>
2777<dd>
2778<p>
2779 If this environment variable is set, it overrides Git&#8217;s autodetection
2780 whether <code>GIT_SSH</code>/<code>GIT_SSH_COMMAND</code>/<code>core.sshCommand</code> refer to OpenSSH,
2781 plink or tortoiseplink. This variable overrides the config setting
2782 <code>ssh.variant</code> that serves the same purpose.
2783</p>
2784</dd>
2785<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052786<code>GIT_ASKPASS</code>
Junio C Hamano3fd7b262010-09-08 22:44:202787</dt>
2788<dd>
2789<p>
Junio C Hamano076ffcc2013-02-06 05:13:212790 If this environment variable is set, then Git commands which need to
Junio C Hamano3fd7b262010-09-08 22:44:202791 acquire passwords or passphrases (e.g. for HTTP or IMAP authentication)
Junio C Hamanoe1aeb5e2014-06-06 19:16:292792 will call this program with a suitable prompt as command-line argument
Junio C Hamano042f2142016-06-27 18:05:052793 and read the password from its STDOUT. See also the <code>core.askPass</code>
Junio C Hamanoa28a9202012-06-21 07:08:232794 option in <a href="git-config.html">git-config(1)</a>.
Junio C Hamano3fd7b262010-09-08 22:44:202795</p>
2796</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592797<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052798<code>GIT_TERMINAL_PROMPT</code>
Junio C Hamano6df93d92014-12-22 22:48:092799</dt>
2800<dd>
2801<p>
2802 If this environment variable is set to <code>0</code>, git will not prompt
2803 on the terminal (e.g., when asking for HTTP authentication).
2804</p>
2805</dd>
2806<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052807<code>GIT_CONFIG_NOSYSTEM</code>
Junio C Hamanoeec745b2013-01-07 08:08:202808</dt>
2809<dd>
2810<p>
2811 Whether to skip reading settings from the system-wide
Junio C Hamanoac12f0e2014-09-19 22:32:512812 <code>$(prefix)/etc/gitconfig</code> file. This environment variable can
2813 be used along with <code>$HOME</code> and <code>$XDG_CONFIG_HOME</code> to create a
Junio C Hamanoeec745b2013-01-07 08:08:202814 predictable environment for a picky script, or you can set it
Junio C Hamanoac12f0e2014-09-19 22:32:512815 temporarily to avoid using a buggy <code>/etc/gitconfig</code> file while
Junio C Hamanoeec745b2013-01-07 08:08:202816 waiting for someone with sufficient permissions to fix it.
2817</p>
2818</dd>
2819<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052820<code>GIT_FLUSH</code>
Junio C Hamano401939f2007-07-01 06:34:302821</dt>
2822<dd>
2823<p>
2824 If this environment variable is set to "1", then commands such
Junio C Hamano1aa40d22010-01-21 17:46:432825 as <em>git blame</em> (in incremental mode), <em>git rev-list</em>, <em>git log</em>,
Junio C Hamano0241d052013-08-30 23:52:172826 <em>git check-attr</em> and <em>git check-ignore</em> will
Junio C Hamanoc7102962013-05-29 23:57:172827 force a flush of the output stream after each record have been
2828 flushed. If this
Junio C Hamano401939f2007-07-01 06:34:302829 variable is set to "0", the output of these commands will be done
2830 using completely buffered I/O. If this environment variable is
Junio C Hamano076ffcc2013-02-06 05:13:212831 not set, Git will choose buffered or record-oriented flushing
Junio C Hamano401939f2007-07-01 06:34:302832 based on whether stdout appears to be redirected to a file or not.
2833</p>
2834</dd>
Junio C Hamano68cf15a2010-11-06 01:01:592835<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052836<code>GIT_TRACE</code>
Junio C Hamano7ccb9fd2006-07-15 01:38:402837</dt>
2838<dd>
2839<p>
Junio C Hamanodbe51052014-07-22 19:39:512840 Enables general trace messages, e.g. alias expansion, built-in
2841 command execution and external command execution.
Junio C Hamano7ccb9fd2006-07-15 01:38:402842</p>
Junio C Hamanodbe51052014-07-22 19:39:512843<div class="paragraph"><p>If this variable is set to "1", "2" or "true" (comparison
2844is case insensitive), trace messages will be printed to
2845stderr.</p></div>
2846<div class="paragraph"><p>If the variable is set to an integer value greater than 2
2847and lower than 10 (strictly) then Git will interpret this
2848value as an open file descriptor and will try to write the
2849trace messages into this file descriptor.</p></div>
2850<div class="paragraph"><p>Alternatively, if the variable is set to an absolute path
2851(starting with a <em>/</em> character), Git will interpret this
Junio C Hamano980e61e2018-09-17 22:45:522852as a file path and will try to append the trace messages
2853to it.</p></div>
Junio C Hamanodbe51052014-07-22 19:39:512854<div class="paragraph"><p>Unsetting the variable, or setting it to empty, "0" or
2855"false" (case insensitive) disables trace messages.</p></div>
Junio C Hamano7ccb9fd2006-07-15 01:38:402856</dd>
Junio C Hamanoabad6da2013-01-06 09:06:322857<dt class="hdlist1">
Junio C Hamanod7105602017-11-21 05:32:502858<code>GIT_TRACE_FSMONITOR</code>
2859</dt>
2860<dd>
2861<p>
2862 Enables trace messages for the filesystem monitor extension.
2863 See <code>GIT_TRACE</code> for available trace output options.
2864</p>
2865</dd>
2866<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052867<code>GIT_TRACE_PACK_ACCESS</code>
Junio C Hamanofa1d3492013-06-20 23:39:432868</dt>
2869<dd>
2870<p>
Junio C Hamanodbe51052014-07-22 19:39:512871 Enables trace messages for all accesses to any packs. For each
Junio C Hamanofa1d3492013-06-20 23:39:432872 access, the pack file name and an offset in the pack is
2873 recorded. This may be helpful for troubleshooting some
2874 pack-related performance problems.
Junio C Hamano042f2142016-06-27 18:05:052875 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanofa1d3492013-06-20 23:39:432876</p>
2877</dd>
2878<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052879<code>GIT_TRACE_PACKET</code>
Junio C Hamanofa1d3492013-06-20 23:39:432880</dt>
2881<dd>
2882<p>
Junio C Hamanodbe51052014-07-22 19:39:512883 Enables trace messages for all packets coming in or out of a
2884 given program. This can help with debugging object negotiation
2885 or other protocol issues. Tracing is turned off at a packet
Junio C Hamano042f2142016-06-27 18:05:052886 starting with "PACK" (but see <code>GIT_TRACE_PACKFILE</code> below).
2887 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanodbe51052014-07-22 19:39:512888</p>
2889</dd>
2890<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052891<code>GIT_TRACE_PACKFILE</code>
Junio C Hamanod7ed4042015-08-03 19:43:002892</dt>
2893<dd>
2894<p>
2895 Enables tracing of packfiles sent or received by a
2896 given program. Unlike other trace output, this trace is
2897 verbatim: no headers, and no quoting of binary data. You almost
2898 certainly want to direct into a file (e.g.,
2899 <code>GIT_TRACE_PACKFILE=/tmp/my.pack</code>) rather than displaying it on
2900 the terminal or mixing it with other trace output.
2901</p>
2902<div class="paragraph"><p>Note that this is currently only implemented for the client side
2903of clones and fetches.</p></div>
2904</dd>
2905<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052906<code>GIT_TRACE_PERFORMANCE</code>
Junio C Hamanodbe51052014-07-22 19:39:512907</dt>
2908<dd>
2909<p>
2910 Enables performance related trace messages, e.g. total execution
2911 time of each Git command.
Junio C Hamano042f2142016-06-27 18:05:052912 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanodbe51052014-07-22 19:39:512913</p>
2914</dd>
2915<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052916<code>GIT_TRACE_SETUP</code>
Junio C Hamanodbe51052014-07-22 19:39:512917</dt>
2918<dd>
2919<p>
2920 Enables trace messages printing the .git, working tree and current
2921 working directory after Git has completed its setup phase.
Junio C Hamano042f2142016-06-27 18:05:052922 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanodbe51052014-07-22 19:39:512923</p>
2924</dd>
2925<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:052926<code>GIT_TRACE_SHALLOW</code>
Junio C Hamanodbe51052014-07-22 19:39:512927</dt>
2928<dd>
2929<p>
2930 Enables trace messages that can help debugging fetching /
2931 cloning of shallow repositories.
Junio C Hamano042f2142016-06-27 18:05:052932 See <code>GIT_TRACE</code> for available trace output options.
Junio C Hamanofa1d3492013-06-20 23:39:432933</p>
2934</dd>
2935<dt class="hdlist1">
Junio C Hamanoc6c919b2016-07-06 21:34:152936<code>GIT_TRACE_CURL</code>
2937</dt>
2938<dd>
2939<p>
2940 Enables a curl full trace dump of all incoming and outgoing data,
2941 including descriptive information, of the git transport protocol.
2942 This is similar to doing curl <code>--trace-ascii</code> on the command line.
2943 This option overrides setting the <code>GIT_CURL_VERBOSE</code> environment
2944 variable.
2945 See <code>GIT_TRACE</code> for available trace output options.
2946</p>
2947</dd>
2948<dt class="hdlist1">
Junio C Hamano640779d2018-02-14 01:29:142949<code>GIT_TRACE_CURL_NO_DATA</code>
2950</dt>
2951<dd>
2952<p>
2953 When a curl trace is enabled (see <code>GIT_TRACE_CURL</code> above), do not dump
2954 data (that is, only dump info lines and headers).
2955</p>
2956</dd>
2957<dt class="hdlist1">
Junio C Hamanoc01eecf2019-05-30 18:17:472958<code>GIT_TRACE2</code>
Junio C Hamano56d696e2019-05-19 09:01:192959</dt>
2960<dd>
2961<p>
2962 Enables more detailed trace messages from the "trace2" library.
Junio C Hamanoc01eecf2019-05-30 18:17:472963 Output from <code>GIT_TRACE2</code> is a simple text-based format for human
Junio C Hamano56d696e2019-05-19 09:01:192964 readability.
2965</p>
Junio C Hamanoc01eecf2019-05-30 18:17:472966<div class="paragraph"><p>If this variable is set to "1", "2" or "true" (comparison
2967is case insensitive), trace messages will be printed to
2968stderr.</p></div>
2969<div class="paragraph"><p>If the variable is set to an integer value greater than 2
2970and lower than 10 (strictly) then Git will interpret this
2971value as an open file descriptor and will try to write the
2972trace messages into this file descriptor.</p></div>
2973<div class="paragraph"><p>Alternatively, if the variable is set to an absolute path
2974(starting with a <em>/</em> character), Git will interpret this
2975as a file path and will try to append the trace messages
2976to it. If the path already exists and is a directory, the
2977trace messages will be written to files (one per process)
2978in that directory, named according to the last component
2979of the SID and an optional counter (to avoid filename
2980collisions).</p></div>
2981<div class="paragraph"><p>In addition, if the variable is set to
2982<code>af_unix:[&lt;socket_type&gt;:]&lt;absolute-pathname&gt;</code>, Git will try
2983to open the path as a Unix Domain Socket. The socket type
2984can be either <code>stream</code> or <code>dgram</code>.</p></div>
2985<div class="paragraph"><p>Unsetting the variable, or setting it to empty, "0" or
2986"false" (case insensitive) disables trace messages.</p></div>
2987<div class="paragraph"><p>See <a href="technical/api-trace2.html">Trace2 documentation</a>
2988for full details.</p></div>
Junio C Hamano56d696e2019-05-19 09:01:192989</dd>
2990<dt class="hdlist1">
Junio C Hamanoc01eecf2019-05-30 18:17:472991<code>GIT_TRACE2_EVENT</code>
Junio C Hamano56d696e2019-05-19 09:01:192992</dt>
2993<dd>
2994<p>
2995 This setting writes a JSON-based format that is suited for machine
Junio C Hamanoc01eecf2019-05-30 18:17:472996 interpretation.
2997 See <code>GIT_TRACE2</code> for available trace output options and
2998 <a href="technical/api-trace2.html">Trace2 documentation</a> for full details.
Junio C Hamano56d696e2019-05-19 09:01:192999</p>
3000</dd>
3001<dt class="hdlist1">
Junio C Hamanoc01eecf2019-05-30 18:17:473002<code>GIT_TRACE2_PERF</code>
Junio C Hamano56d696e2019-05-19 09:01:193003</dt>
3004<dd>
3005<p>
Junio C Hamanoc01eecf2019-05-30 18:17:473006 In addition to the text-based messages available in <code>GIT_TRACE2</code>, this
Junio C Hamano56d696e2019-05-19 09:01:193007 setting writes a column-based format for understanding nesting
Junio C Hamanoc01eecf2019-05-30 18:17:473008 regions.
3009 See <code>GIT_TRACE2</code> for available trace output options and
3010 <a href="technical/api-trace2.html">Trace2 documentation</a> for full details.
Junio C Hamano56d696e2019-05-19 09:01:193011</p>
3012</dd>
3013<dt class="hdlist1">
Junio C Hamano640779d2018-02-14 01:29:143014<code>GIT_REDACT_COOKIES</code>
3015</dt>
3016<dd>
3017<p>
3018 This can be set to a comma-separated list of strings. When a curl trace
3019 is enabled (see <code>GIT_TRACE_CURL</code> above), whenever a "Cookies:" header
3020 sent by the client is dumped, values of cookies whose key is in that
3021 list (case-sensitive) are redacted.
3022</p>
3023</dd>
3024<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053025<code>GIT_LITERAL_PATHSPECS</code>
Junio C Hamanoabad6da2013-01-06 09:06:323026</dt>
3027<dd>
3028<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513029 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamanoabad6da2013-01-06 09:06:323030 pathspecs literally, rather than as glob patterns. For example,
Junio C Hamanoac12f0e2014-09-19 22:32:513031 running <code>GIT_LITERAL_PATHSPECS=1 git log -- '*.c'</code> will search
3032 for commits that touch the path <code>*.c</code>, not any paths that the
3033 glob <code>*.c</code> matches. You might want this if you are feeding
Junio C Hamano076ffcc2013-02-06 05:13:213034 literal paths to Git (e.g., paths previously given to you by
Junio C Hamanoac12f0e2014-09-19 22:32:513035 <code>git ls-tree</code>, <code>--raw</code> diff output, etc).
Junio C Hamanoabad6da2013-01-06 09:06:323036</p>
3037</dd>
Junio C Hamano8eac2682013-09-09 22:35:203038<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053039<code>GIT_GLOB_PATHSPECS</code>
Junio C Hamano8eac2682013-09-09 22:35:203040</dt>
3041<dd>
3042<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513043 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamano8eac2682013-09-09 22:35:203044 pathspecs as glob patterns (aka "glob" magic).
3045</p>
3046</dd>
3047<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053048<code>GIT_NOGLOB_PATHSPECS</code>
Junio C Hamano8eac2682013-09-09 22:35:203049</dt>
3050<dd>
3051<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513052 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamano8eac2682013-09-09 22:35:203053 pathspecs as literal (aka "literal" magic).
3054</p>
3055</dd>
3056<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053057<code>GIT_ICASE_PATHSPECS</code>
Junio C Hamano8eac2682013-09-09 22:35:203058</dt>
3059<dd>
3060<p>
Junio C Hamanoac12f0e2014-09-19 22:32:513061 Setting this variable to <code>1</code> will cause Git to treat all
Junio C Hamano8eac2682013-09-09 22:35:203062 pathspecs as case-insensitive.
3063</p>
3064</dd>
Junio C Hamanoaef76442013-10-18 22:11:273065<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053066<code>GIT_REFLOG_ACTION</code>
Junio C Hamanoaef76442013-10-18 22:11:273067</dt>
3068<dd>
3069<p>
3070 When a ref is updated, reflog entries are created to keep
3071 track of the reason why the ref was updated (which is
3072 typically the name of the high-level command that updated
3073 the ref), in addition to the old and new values of the ref.
3074 A scripted Porcelain command can use set_reflog_action
Junio C Hamanoac12f0e2014-09-19 22:32:513075 helper function in <code>git-sh-setup</code> to set its name to this
Junio C Hamanoaef76442013-10-18 22:11:273076 variable when it is invoked as the top level command by the
3077 end user, to be recorded in the body of the reflog.
3078</p>
3079</dd>
Junio C Hamanoef57d1e2015-03-25 21:23:003080<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053081<code>GIT_REF_PARANOIA</code>
Junio C Hamanoef57d1e2015-03-25 21:23:003082</dt>
3083<dd>
3084<p>
3085 If set to <code>1</code>, include broken or badly named refs when iterating
3086 over lists of refs. In a normal, non-corrupted repository, this
3087 does nothing. However, enabling it may help git to detect and
3088 abort some operations in the presence of broken refs. Git sets
3089 this variable automatically when performing destructive
3090 operations like <a href="git-prune.html">git-prune(1)</a>. You should not need to set
3091 it yourself unless you want to be paranoid about making sure
3092 an operation has touched every ref (e.g., because you are
3093 cloning a repository to make a backup).
3094</p>
3095</dd>
Junio C Hamano1eb56092015-10-05 20:39:533096<dt class="hdlist1">
Junio C Hamano042f2142016-06-27 18:05:053097<code>GIT_ALLOW_PROTOCOL</code>
Junio C Hamano1eb56092015-10-05 20:39:533098</dt>
3099<dd>
3100<p>
Junio C Hamano9e35abf2016-12-27 22:37:273101 If set to a colon-separated list of protocols, behave as if
3102 <code>protocol.allow</code> is set to <code>never</code>, and each of the listed
3103 protocols has <code>protocol.&lt;name&gt;.allow</code> set to <code>always</code>
3104 (overriding any existing configuration). In other words, any
3105 protocol not mentioned will be disallowed (i.e., this is a
3106 whitelist, not a blacklist). See the description of
3107 <code>protocol.allow</code> in <a href="git-config.html">git-config(1)</a> for more details.
Junio C Hamano1eb56092015-10-05 20:39:533108</p>
Junio C Hamano9e35abf2016-12-27 22:37:273109</dd>
3110<dt class="hdlist1">
3111<code>GIT_PROTOCOL_FROM_USER</code>
3112</dt>
3113<dd>
Junio C Hamano1eb56092015-10-05 20:39:533114<p>
Junio C Hamano9e35abf2016-12-27 22:37:273115 Set to 0 to prevent protocols used by fetch/push/clone which are
3116 configured to the <code>user</code> state. This is useful to restrict recursive
3117 submodule initialization from an untrusted repository or for programs
3118 which feed potentially-untrusted URLS to git commands. See
3119 <a href="git-config.html">git-config(1)</a> for more details.
Junio C Hamano1eb56092015-10-05 20:39:533120</p>
Junio C Hamano1eb56092015-10-05 20:39:533121</dd>
Junio C Hamano139b7d12017-10-03 07:10:593122<dt class="hdlist1">
Junio C Hamano912712b2017-12-06 18:04:013123<code>GIT_PROTOCOL</code>
3124</dt>
3125<dd>
3126<p>
3127 For internal use only. Used in handshaking the wire protocol.
3128 Contains a colon <em>:</em> separated list of keys with optional values
3129 <em>key[=value]</em>. Presence of unknown keys and values must be
3130 ignored.
3131</p>
3132</dd>
3133<dt class="hdlist1">
Junio C Hamano139b7d12017-10-03 07:10:593134<code>GIT_OPTIONAL_LOCKS</code>
3135</dt>
3136<dd>
3137<p>
3138 If set to <code>0</code>, Git will complete any requested operation without
3139 performing any optional sub-operations that require taking a lock.
3140 For example, this will prevent <code>git status</code> from refreshing the
3141 index as a side effect. This is useful for processes running in
3142 the background which do not want to cause lock contention with
3143 other operations on the repository. Defaults to <code>1</code>.
3144</p>
3145</dd>
Junio C Hamano3a9c0342017-11-10 06:01:123146<dt class="hdlist1">
3147<code>GIT_REDIRECT_STDIN</code>
3148</dt>
3149<dt class="hdlist1">
3150<code>GIT_REDIRECT_STDOUT</code>
3151</dt>
3152<dt class="hdlist1">
3153<code>GIT_REDIRECT_STDERR</code>
3154</dt>
3155<dd>
3156<p>
3157 Windows-only: allow redirecting the standard input/output/error
3158 handles to paths specified by the environment variables. This is
3159 particularly useful in multi-threaded applications where the
3160 canonical way to pass standard handles via <code>CreateProcess()</code> is
3161 not an option because it would require the handles to be marked
3162 inheritable (and consequently <strong>every</strong> spawned process would
3163 inherit them, possibly blocking regular Git operations). The
3164 primary intended use case is to use named pipes for communication
3165 (e.g. <code>\\.\pipe\my-git-stdin-123</code>).
3166</p>
3167<div class="paragraph"><p>Two special values are supported: <code>off</code> will simply close the
3168corresponding standard handle, and if <code>GIT_REDIRECT_STDERR</code> is
3169<code>2&gt;&amp;1</code>, standard error will be redirected to the same handle as
3170standard output.</p></div>
3171</dd>
Junio C Hamano047135e2017-12-19 21:57:543172<dt class="hdlist1">
3173<code>GIT_PRINT_SHA1_ELLIPSIS</code> (deprecated)
3174</dt>
3175<dd>
3176<p>
3177 If set to <code>yes</code>, print an ellipsis following an
3178 (abbreviated) SHA-1 value. This affects indications of
3179 detached HEADs (<a href="git-checkout.html">git-checkout(1)</a>) and the raw
3180 diff output (<a href="git-diff.html">git-diff(1)</a>). Printing an
3181 ellipsis in the cases mentioned is no longer considered
3182 adequate and support for it is likely to be removed in the
3183 foreseeable future (along with the variable).
3184</p>
3185</dd>
Junio C Hamanoba4b9282008-07-06 05:20:313186</dl></div>
Junio C Hamano1a4e8412005-12-27 08:17:233187</div>
Junio C Hamano9d971152012-12-19 00:43:113188</div>
3189</div>
3190<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313191<h2 id="_discussion_a_id_discussion_a">Discussion<a id="Discussion"></a></h2>
Junio C Hamano1a4e8412005-12-27 08:17:233192<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:593193<div class="paragraph"><p>More detail on the following is available from the
Junio C Hamano076ffcc2013-02-06 05:13:213194<a href="user-manual.html#git-concepts">Git concepts chapter of the
Junio C Hamanoa28a9202012-06-21 07:08:233195user-manual</a> and <a href="gitcore-tutorial.html">gitcore-tutorial(7)</a>.</p></div>
Junio C Hamano076ffcc2013-02-06 05:13:213196<div class="paragraph"><p>A Git project normally consists of a working directory with a ".git"
Junio C Hamano597ffcf2007-09-17 17:33:153197subdirectory at the top level. The .git directory contains, among other
3198things, a compressed object database representing the complete history
3199of the project, an "index" file which links that history to the current
3200contents of the working tree, and named pointers into that history such
Junio C Hamanoba4b9282008-07-06 05:20:313201as tags and branch heads.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593202<div class="paragraph"><p>The object database contains objects of three main types: blobs, which
Junio C Hamano597ffcf2007-09-17 17:33:153203hold file data; trees, which point to blobs and other trees to build up
Junio C Hamanofe986052007-12-19 07:33:383204directory hierarchies; and commits, which each reference a single tree
Junio C Hamanoba4b9282008-07-06 05:20:313205and some number of parent commits.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593206<div class="paragraph"><p>The commit, equivalent to what other systems call a "changeset" or
3207"version", represents a step in the project&#8217;s history, and each parent
Junio C Hamano597ffcf2007-09-17 17:33:153208represents an immediately preceding step. Commits with more than one
Junio C Hamanoba4b9282008-07-06 05:20:313209parent represent merges of independent lines of development.</p></div>
Junio C Hamanoe3f080d2013-04-22 02:27:133210<div class="paragraph"><p>All objects are named by the SHA-1 hash of their contents, normally
Junio C Hamano597ffcf2007-09-17 17:33:153211written as a string of 40 hex digits. Such names are globally unique.
3212The entire history leading up to a commit can be vouched for by signing
3213just that commit. A fourth object type, the tag, is provided for this
Junio C Hamanoba4b9282008-07-06 05:20:313214purpose.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593215<div class="paragraph"><p>When first created, objects are stored in individual files, but for
Junio C Hamanoba4b9282008-07-06 05:20:313216efficiency may later be compressed together into "pack files".</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593217<div class="paragraph"><p>Named pointers called refs mark interesting points in history. A ref
Junio C Hamanoe3f080d2013-04-22 02:27:133218may contain the SHA-1 name of an object or the name of another ref. Refs
Junio C Hamanoac12f0e2014-09-19 22:32:513219with names beginning <code>ref/head/</code> contain the SHA-1 name of the most
Junio C Hamanoe3f080d2013-04-22 02:27:133220recent commit (or "head") of a branch under development. SHA-1 names of
Junio C Hamanoac12f0e2014-09-19 22:32:513221tags of interest are stored under <code>ref/tags/</code>. A special ref named
3222<code>HEAD</code> contains the name of the currently checked-out branch.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593223<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:153224path, a blob object and a set of attributes. The blob object represents
3225the contents of the file as of the head of the current branch. The
3226attributes (last modified time, size, etc.) are taken from the
3227corresponding file in the working tree. Subsequent changes to the
3228working tree can be found by comparing these attributes. The index may
3229be updated with new content, and new commits may be created from the
Junio C Hamanoba4b9282008-07-06 05:20:313230content stored in the index.</p></div>
Junio C Hamano68cf15a2010-11-06 01:01:593231<div class="paragraph"><p>The index is also capable of storing multiple entries (called "stages")
Junio C Hamano597ffcf2007-09-17 17:33:153232for a given pathname. These stages are used to hold the various
Junio C Hamanoba4b9282008-07-06 05:20:313233unmerged version of a file when a merge is in progress.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:233234</div>
Junio C Hamano9d971152012-12-19 00:43:113235</div>
3236<div class="sect1">
Junio C Hamanod0316112012-08-22 19:55:293237<h2 id="_further_documentation">FURTHER DOCUMENTATION</h2>
3238<div class="sectionbody">
3239<div class="paragraph"><p>See the references in the "description" section to get started
Junio C Hamano076ffcc2013-02-06 05:13:213240using Git. The following is probably more detail than necessary
Junio C Hamanod0316112012-08-22 19:55:293241for a first-time user.</p></div>
Junio C Hamano076ffcc2013-02-06 05:13:213242<div class="paragraph"><p>The <a href="user-manual.html#git-concepts">Git concepts chapter of the
Junio C Hamanod0316112012-08-22 19:55:293243user-manual</a> and <a href="gitcore-tutorial.html">gitcore-tutorial(7)</a> both provide
Junio C Hamano076ffcc2013-02-06 05:13:213244introductions to the underlying Git architecture.</p></div>
Junio C Hamanod0316112012-08-22 19:55:293245<div class="paragraph"><p>See <a href="gitworkflows.html">gitworkflows(7)</a> for an overview of recommended workflows.</p></div>
3246<div class="paragraph"><p>See also the <a href="howto-index.html">howto</a> documents for some useful
3247examples.</p></div>
3248<div class="paragraph"><p>The internals are documented in the
Junio C Hamano076ffcc2013-02-06 05:13:213249<a href="technical/api-index.html">Git API documentation</a>.</p></div>
Junio C Hamanod0316112012-08-22 19:55:293250<div class="paragraph"><p>Users migrating from CVS may also want to
3251read <a href="gitcvs-migration.html">gitcvs-migration(7)</a>.</p></div>
3252</div>
Junio C Hamano9d971152012-12-19 00:43:113253</div>
3254<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313255<h2 id="_authors">Authors</h2>
Junio C Hamano1a4e8412005-12-27 08:17:233256<div class="sectionbody">
Junio C Hamano5f3d8392011-03-15 23:33:353257<div class="paragraph"><p>Git was started by Linus Torvalds, and is currently maintained by Junio
Junio C Hamano076ffcc2013-02-06 05:13:213258C Hamano. Numerous contributions have come from the Git mailing list
Junio C Hamano7b43d412014-07-23 23:09:443259&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:023260gives you a more complete list of contributors.</p></div>
3261<div class="paragraph"><p>If you have a clone of git.git itself, the
Junio C Hamanoa28a9202012-06-21 07:08:233262output 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:353263the authors for specific parts of the project.</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:233264</div>
Junio C Hamano9d971152012-12-19 00:43:113265</div>
3266<div class="sect1">
Junio C Hamanoa9788762010-08-03 15:15:543267<h2 id="_reporting_bugs">Reporting Bugs</h2>
3268<div class="sectionbody">
Junio C Hamano68cf15a2010-11-06 01:01:593269<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:543270development and maintenance is primarily done. You do not have to be
Junio C Hamano32a75272018-10-16 07:37:353271subscribed to the list to send a message there. See the list archive
3272at <a href="https://public-inbox.org/git">https://public-inbox.org/git</a> for previous bug reports and other
3273discussions.</p></div>
Junio C Hamano8b40d4b2018-03-15 22:52:333274<div class="paragraph"><p>Issues which are security relevant should be disclosed privately to
3275the 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:543276</div>
Junio C Hamano9d971152012-12-19 00:43:113277</div>
3278<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313279<h2 id="_see_also">SEE ALSO</h2>
Junio C Hamano9e1793f2008-06-02 07:31:163280<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:233281<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:323282<a href="giteveryday.html">giteveryday(7)</a>, <a href="gitcvs-migration.html">gitcvs-migration(7)</a>,
Junio C Hamanoa28a9202012-06-21 07:08:233283<a href="gitglossary.html">gitglossary(7)</a>, <a href="gitcore-tutorial.html">gitcore-tutorial(7)</a>,
3284<a href="gitcli.html">gitcli(7)</a>, <a href="user-manual.html">The Git User&#8217;s Manual</a>,
3285<a href="gitworkflows.html">gitworkflows(7)</a></p></div>
Junio C Hamano9e1793f2008-06-02 07:31:163286</div>
Junio C Hamano9d971152012-12-19 00:43:113287</div>
3288<div class="sect1">
Junio C Hamanoba4b9282008-07-06 05:20:313289<h2 id="_git">GIT</h2>
Junio C Hamano1a4e8412005-12-27 08:17:233290<div class="sectionbody">
Junio C Hamanoa28a9202012-06-21 07:08:233291<div class="paragraph"><p>Part of the <a href="git.html">git(1)</a> suite</p></div>
Junio C Hamano1a4e8412005-12-27 08:17:233292</div>
Junio C Hamano7bd050f2011-09-22 06:32:223293</div>
Junio C Hamano9d971152012-12-19 00:43:113294</div>
Junio C Hamano7bd050f2011-09-22 06:32:223295<div id="footnotes"><hr /></div>
Junio C Hamano1a4e8412005-12-27 08:17:233296<div id="footer">
3297<div id="footer-text">
Junio C Hamano2ef0ba32018-01-26 23:13:533298Last updated
Junio C Hamano0906e982019-07-12 20:33:433299 2019-07-12 13:29:16 PDT
Junio C Hamano1a4e8412005-12-27 08:17:233300</div>
3301</div>
3302</body>
3303</html>