Fix some links
[TortoiseGit.git] / doc / source / en / TortoiseGit / git_doc / git.xml
blob6bd73eceb4a8ccea07cf3296a8a215c35623c949
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!DOCTYPE sect2 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">\r
3 \r
4 <sect2 lang="en" id="git(1)">\r
5     <title>git(1)</title>\r
6 <indexterm>\r
7 <primary>git(1)</primary>\r
8 </indexterm>\r
9 <simplesect id="git(1)__name">\r
10 <title>NAME</title>\r
11 <simpara>git - the stupid content tracker</simpara>\r
12 </simplesect>\r
13 <simplesect id="git(1)__synopsis">\r
14 <title>SYNOPSIS</title>\r
15 <blockquote>\r
16 <literallayout><emphasis>git</emphasis> [--version] [--help] [-C &lt;path&gt;] [-c &lt;name&gt;=&lt;value&gt;]\r
17     [--exec-path[=&lt;path&gt;]] [--html-path] [--man-path] [--info-path]\r
18     [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]\r
19     [--git-dir=&lt;path&gt;] [--work-tree=&lt;path&gt;] [--namespace=&lt;name&gt;]\r
20     &lt;command&gt; [&lt;args&gt;]</literallayout>\r
21 </blockquote>\r
22 </simplesect>\r
23 <simplesect id="git(1)__description">\r
24 <title>DESCRIPTION</title>\r
25 <simpara>Git is a fast, scalable, distributed revision control system with an\r
26 unusually rich command set that provides both high-level operations\r
27 and full access to internals.</simpara>\r
28 <simpara>See <xref linkend="gittutorial(7)" /> to get started, then see\r
29 <xref linkend="giteveryday(7)" /> for a useful minimum set of\r
30 commands.  The <ulink url="https://www.kernel.org/pub/software/scm/git/docs/user-manual.html"><citetitle>Git User's Manual</citetitle></ulink> has a more\r
31 in-depth introduction.</simpara>\r
32 <simpara>After you mastered the basic concepts, you can come back to this\r
33 page to learn what commands Git offers.  You can learn more about\r
34 individual Git commands with "git help command".  <xref linkend="gitcli(7)" />\r
35 manual page gives you an overview of the command-line command syntax.</simpara>\r
36 <simpara>Formatted and hyperlinked version of the latest Git documentation\r
37 can be viewed at <emphasis>http://git-htmldocs.googlecode.com/git/git.html</emphasis>.</simpara>\r
38 </simplesect>\r
39 <simplesect id="git(1)__options">\r
40 <title>OPTIONS</title>\r
41 <variablelist>\r
42 <varlistentry>\r
43 <term>\r
44 --version\r
45 </term>\r
46 <listitem>\r
47 <simpara>\r
48         Prints the Git suite version that the <emphasis>git</emphasis> program came from.\r
49 </simpara>\r
50 </listitem>\r
51 </varlistentry>\r
52 <varlistentry>\r
53 <term>\r
54 --help\r
55 </term>\r
56 <listitem>\r
57 <simpara>\r
58         Prints the synopsis and a list of the most commonly used\r
59         commands. If the option <emphasis>--all</emphasis> or <emphasis>-a</emphasis> is given then all\r
60         available commands are printed. If a Git command is named this\r
61         option will bring up the manual page for that command.\r
62 </simpara>\r
63 <simpara>Other options are available to control how the manual page is\r
64 displayed. See <xref linkend="git-help(1)" /> for more information,\r
65 because <emphasis>git --help ...</emphasis> is converted internally into <emphasis>git\r
66 help ...</emphasis>.</simpara>\r
67 </listitem>\r
68 </varlistentry>\r
69 <varlistentry>\r
70 <term>\r
71 -C &lt;path&gt;\r
72 </term>\r
73 <listitem>\r
74 <simpara>\r
75         Run as if git was started in <emphasis>&lt;path&gt;</emphasis> instead of the current working\r
76         directory.  When multiple <emphasis>-C</emphasis> options are given, each subsequent\r
77         non-absolute <emphasis>-C &lt;path&gt;</emphasis> is interpreted relative to the preceding <emphasis>-C\r
78         &lt;path&gt;</emphasis>.\r
79 </simpara>\r
80 <simpara>This option affects options that expect path name like <emphasis>--git-dir</emphasis> and\r
81 <emphasis>--work-tree</emphasis> in that their interpretations of the path names would be\r
82 made relative to the working directory caused by the <emphasis>-C</emphasis> option. For\r
83 example the following invocations are equivalent:</simpara>\r
84 <literallayout class="monospaced">git --git-dir=a.git --work-tree=b -C c status\r
85 git --git-dir=c/a.git --work-tree=c/b status</literallayout>\r
86 </listitem>\r
87 </varlistentry>\r
88 <varlistentry>\r
89 <term>\r
90 -c &lt;name&gt;=&lt;value&gt;\r
91 </term>\r
92 <listitem>\r
93 <simpara>\r
94         Pass a configuration parameter to the command. The value\r
95         given will override values from configuration files.\r
96         The &lt;name&gt; is expected in the same format as listed by\r
97         <emphasis>git config</emphasis> (subkeys separated by dots).\r
98 </simpara>\r
99 <simpara>Note that omitting the <emphasis>=</emphasis> in <emphasis>git -c foo.bar ...</emphasis> is allowed and sets\r
100 <emphasis>foo.bar</emphasis> to the boolean true value (just like <emphasis>[foo]bar</emphasis> would in a\r
101 config file). Including the equals but with an empty value (like <emphasis>git -c\r
102 foo.bar= ...</emphasis>) sets <emphasis>foo.bar</emphasis> to the empty string.</simpara>\r
103 </listitem>\r
104 </varlistentry>\r
105 <varlistentry>\r
106 <term>\r
107 --exec-path[=&lt;path&gt;]\r
108 </term>\r
109 <listitem>\r
110 <simpara>\r
111         Path to wherever your core Git programs are installed.\r
112         This can also be controlled by setting the GIT_EXEC_PATH\r
113         environment variable. If no path is given, <emphasis>git</emphasis> will print\r
114         the current setting and then exit.\r
115 </simpara>\r
116 </listitem>\r
117 </varlistentry>\r
118 <varlistentry>\r
119 <term>\r
120 --html-path\r
121 </term>\r
122 <listitem>\r
123 <simpara>\r
124         Print the path, without trailing slash, where Git's HTML\r
125         documentation is installed and exit.\r
126 </simpara>\r
127 </listitem>\r
128 </varlistentry>\r
129 <varlistentry>\r
130 <term>\r
131 --man-path\r
132 </term>\r
133 <listitem>\r
134 <simpara>\r
135         Print the manpath (see <emphasis>man(1)</emphasis>) for the man pages for\r
136         this version of Git and exit.\r
137 </simpara>\r
138 </listitem>\r
139 </varlistentry>\r
140 <varlistentry>\r
141 <term>\r
142 --info-path\r
143 </term>\r
144 <listitem>\r
145 <simpara>\r
146         Print the path where the Info files documenting this\r
147         version of Git are installed and exit.\r
148 </simpara>\r
149 </listitem>\r
150 </varlistentry>\r
151 <varlistentry>\r
152 <term>\r
153 -p\r
154 </term>\r
155 <term>\r
156 --paginate\r
157 </term>\r
158 <listitem>\r
159 <simpara>\r
160         Pipe all output into <emphasis>less</emphasis> (or if set, $PAGER) if standard\r
161         output is a terminal.  This overrides the <emphasis>pager.&lt;cmd&gt;</emphasis>\r
162         configuration options (see the "Configuration Mechanism" section\r
163         below).\r
164 </simpara>\r
165 </listitem>\r
166 </varlistentry>\r
167 <varlistentry>\r
168 <term>\r
169 --no-pager\r
170 </term>\r
171 <listitem>\r
172 <simpara>\r
173         Do not pipe Git output into a pager.\r
174 </simpara>\r
175 </listitem>\r
176 </varlistentry>\r
177 <varlistentry>\r
178 <term>\r
179 --git-dir=&lt;path&gt;\r
180 </term>\r
181 <listitem>\r
182 <simpara>\r
183         Set the path to the repository. This can also be controlled by\r
184         setting the GIT_DIR environment variable. It can be an absolute\r
185         path or relative path to current working directory.\r
186 </simpara>\r
187 </listitem>\r
188 </varlistentry>\r
189 <varlistentry>\r
190 <term>\r
191 --work-tree=&lt;path&gt;\r
192 </term>\r
193 <listitem>\r
194 <simpara>\r
195         Set the path to the working tree. It can be an absolute path\r
196         or a path relative to the current working directory.\r
197         This can also be controlled by setting the GIT_WORK_TREE\r
198         environment variable and the core.worktree configuration\r
199         variable (see core.worktree in <xref linkend="git-config(1)" /> for a\r
200         more detailed discussion).\r
201 </simpara>\r
202 </listitem>\r
203 </varlistentry>\r
204 <varlistentry>\r
205 <term>\r
206 --namespace=&lt;path&gt;\r
207 </term>\r
208 <listitem>\r
209 <simpara>\r
210         Set the Git namespace.  See <xref linkend="gitnamespaces(7)" /> for more\r
211         details.  Equivalent to setting the <emphasis>GIT_NAMESPACE</emphasis> environment\r
212         variable.\r
213 </simpara>\r
214 </listitem>\r
215 </varlistentry>\r
216 <varlistentry>\r
217 <term>\r
218 --bare\r
219 </term>\r
220 <listitem>\r
221 <simpara>\r
222         Treat the repository as a bare repository.  If GIT_DIR\r
223         environment is not set, it is set to the current working\r
224         directory.\r
225 </simpara>\r
226 </listitem>\r
227 </varlistentry>\r
228 <varlistentry>\r
229 <term>\r
230 --no-replace-objects\r
231 </term>\r
232 <listitem>\r
233 <simpara>\r
234         Do not use replacement refs to replace Git objects. See\r
235         <xref linkend="git-replace(1)" /> for more information.\r
236 </simpara>\r
237 </listitem>\r
238 </varlistentry>\r
239 <varlistentry>\r
240 <term>\r
241 --literal-pathspecs\r
242 </term>\r
243 <listitem>\r
244 <simpara>\r
245         Treat pathspecs literally (i.e. no globbing, no pathspec magic).\r
246         This is equivalent to setting the <emphasis>GIT_LITERAL_PATHSPECS</emphasis> environment\r
247         variable to <emphasis>1</emphasis>.\r
248 </simpara>\r
249 </listitem>\r
250 </varlistentry>\r
251 <varlistentry>\r
252 <term>\r
253 --glob-pathspecs\r
254 </term>\r
255 <listitem>\r
256 <simpara>\r
257         Add "glob" magic to all pathspec. This is equivalent to setting\r
258         the <emphasis>GIT_GLOB_PATHSPECS</emphasis> environment variable to <emphasis>1</emphasis>. Disabling\r
259         globbing on individual pathspecs can be done using pathspec\r
260         magic ":(literal)"\r
261 </simpara>\r
262 </listitem>\r
263 </varlistentry>\r
264 <varlistentry>\r
265 <term>\r
266 --noglob-pathspecs\r
267 </term>\r
268 <listitem>\r
269 <simpara>\r
270         Add "literal" magic to all pathspec. This is equivalent to setting\r
271         the <emphasis>GIT_NOGLOB_PATHSPECS</emphasis> environment variable to <emphasis>1</emphasis>. Enabling\r
272         globbing on individual pathspecs can be done using pathspec\r
273         magic ":(glob)"\r
274 </simpara>\r
275 </listitem>\r
276 </varlistentry>\r
277 <varlistentry>\r
278 <term>\r
279 --icase-pathspecs\r
280 </term>\r
281 <listitem>\r
282 <simpara>\r
283         Add "icase" magic to all pathspec. This is equivalent to setting\r
284         the <emphasis>GIT_ICASE_PATHSPECS</emphasis> environment variable to <emphasis>1</emphasis>.\r
285 </simpara>\r
286 </listitem>\r
287 </varlistentry>\r
288 </variablelist>\r
289 </simplesect>\r
290 <simplesect id="git(1)__git_commands">\r
291 <title>GIT COMMANDS</title>\r
292 <simpara>We divide Git into high level ("porcelain") commands and low level\r
293 ("plumbing") commands.</simpara>\r
294 </simplesect>\r
295 <simplesect id="git(1)__high_level_commands_porcelain">\r
296 <title>High-level commands (porcelain)</title>\r
297 <simpara>We separate the porcelain commands into the main commands and some\r
298 ancillary user utilities.</simpara>\r
299 <section id="git(1)__main_porcelain_commands">\r
300 <title>Main porcelain commands</title>\r
301 <variablelist>\r
302 <varlistentry>\r
303 <term>\r
304 <xref linkend="git-add(1)" />\r
305 </term>\r
306 <listitem>\r
307 <simpara>\r
308         Add file contents to the index.\r
309 </simpara>\r
310 </listitem>\r
311 </varlistentry>\r
312 <varlistentry>\r
313 <term>\r
314 <xref linkend="git-am(1)" />\r
315 </term>\r
316 <listitem>\r
317 <simpara>\r
318         Apply a series of patches from a mailbox.\r
319 </simpara>\r
320 </listitem>\r
321 </varlistentry>\r
322 <varlistentry>\r
323 <term>\r
324 <xref linkend="git-archive(1)" />\r
325 </term>\r
326 <listitem>\r
327 <simpara>\r
328         Create an archive of files from a named tree.\r
329 </simpara>\r
330 </listitem>\r
331 </varlistentry>\r
332 <varlistentry>\r
333 <term>\r
334 <xref linkend="git-bisect(1)" />\r
335 </term>\r
336 <listitem>\r
337 <simpara>\r
338         Use binary search to find the commit that introduced a bug.\r
339 </simpara>\r
340 </listitem>\r
341 </varlistentry>\r
342 <varlistentry>\r
343 <term>\r
344 <xref linkend="git-branch(1)" />\r
345 </term>\r
346 <listitem>\r
347 <simpara>\r
348         List, create, or delete branches.\r
349 </simpara>\r
350 </listitem>\r
351 </varlistentry>\r
352 <varlistentry>\r
353 <term>\r
354 <xref linkend="git-bundle(1)" />\r
355 </term>\r
356 <listitem>\r
357 <simpara>\r
358         Move objects and refs by archive.\r
359 </simpara>\r
360 </listitem>\r
361 </varlistentry>\r
362 <varlistentry>\r
363 <term>\r
364 <xref linkend="git-checkout(1)" />\r
365 </term>\r
366 <listitem>\r
367 <simpara>\r
368         Switch branches or restore working tree files.\r
369 </simpara>\r
370 </listitem>\r
371 </varlistentry>\r
372 <varlistentry>\r
373 <term>\r
374 <xref linkend="git-cherry-pick(1)" />\r
375 </term>\r
376 <listitem>\r
377 <simpara>\r
378         Apply the changes introduced by some existing commits.\r
379 </simpara>\r
380 </listitem>\r
381 </varlistentry>\r
382 <varlistentry>\r
383 <term>\r
384 <xref linkend="git-citool(1)" />\r
385 </term>\r
386 <listitem>\r
387 <simpara>\r
388         Graphical alternative to git-commit.\r
389 </simpara>\r
390 </listitem>\r
391 </varlistentry>\r
392 <varlistentry>\r
393 <term>\r
394 <xref linkend="git-clean(1)" />\r
395 </term>\r
396 <listitem>\r
397 <simpara>\r
398         Remove untracked files from the working tree.\r
399 </simpara>\r
400 </listitem>\r
401 </varlistentry>\r
402 <varlistentry>\r
403 <term>\r
404 <xref linkend="git-clone(1)" />\r
405 </term>\r
406 <listitem>\r
407 <simpara>\r
408         Clone a repository into a new directory.\r
409 </simpara>\r
410 </listitem>\r
411 </varlistentry>\r
412 <varlistentry>\r
413 <term>\r
414 <xref linkend="git-commit(1)" />\r
415 </term>\r
416 <listitem>\r
417 <simpara>\r
418         Record changes to the repository.\r
419 </simpara>\r
420 </listitem>\r
421 </varlistentry>\r
422 <varlistentry>\r
423 <term>\r
424 <xref linkend="git-describe(1)" />\r
425 </term>\r
426 <listitem>\r
427 <simpara>\r
428         Describe a commit using the most recent tag reachable from it.\r
429 </simpara>\r
430 </listitem>\r
431 </varlistentry>\r
432 <varlistentry>\r
433 <term>\r
434 <xref linkend="git-diff(1)" />\r
435 </term>\r
436 <listitem>\r
437 <simpara>\r
438         Show changes between commits, commit and working tree, etc.\r
439 </simpara>\r
440 </listitem>\r
441 </varlistentry>\r
442 <varlistentry>\r
443 <term>\r
444 <xref linkend="git-fetch(1)" />\r
445 </term>\r
446 <listitem>\r
447 <simpara>\r
448         Download objects and refs from another repository.\r
449 </simpara>\r
450 </listitem>\r
451 </varlistentry>\r
452 <varlistentry>\r
453 <term>\r
454 <xref linkend="git-format-patch(1)" />\r
455 </term>\r
456 <listitem>\r
457 <simpara>\r
458         Prepare patches for e-mail submission.\r
459 </simpara>\r
460 </listitem>\r
461 </varlistentry>\r
462 <varlistentry>\r
463 <term>\r
464 <xref linkend="git-gc(1)" />\r
465 </term>\r
466 <listitem>\r
467 <simpara>\r
468         Cleanup unnecessary files and optimize the local repository.\r
469 </simpara>\r
470 </listitem>\r
471 </varlistentry>\r
472 <varlistentry>\r
473 <term>\r
474 <xref linkend="git-grep(1)" />\r
475 </term>\r
476 <listitem>\r
477 <simpara>\r
478         Print lines matching a pattern.\r
479 </simpara>\r
480 </listitem>\r
481 </varlistentry>\r
482 <varlistentry>\r
483 <term>\r
484 <xref linkend="git-gui(1)" />\r
485 </term>\r
486 <listitem>\r
487 <simpara>\r
488         A portable graphical interface to Git.\r
489 </simpara>\r
490 </listitem>\r
491 </varlistentry>\r
492 <varlistentry>\r
493 <term>\r
494 <xref linkend="git-init(1)" />\r
495 </term>\r
496 <listitem>\r
497 <simpara>\r
498         Create an empty Git repository or reinitialize an existing one.\r
499 </simpara>\r
500 </listitem>\r
501 </varlistentry>\r
502 <varlistentry>\r
503 <term>\r
504 <xref linkend="git-log(1)" />\r
505 </term>\r
506 <listitem>\r
507 <simpara>\r
508         Show commit logs.\r
509 </simpara>\r
510 </listitem>\r
511 </varlistentry>\r
512 <varlistentry>\r
513 <term>\r
514 <xref linkend="git-merge(1)" />\r
515 </term>\r
516 <listitem>\r
517 <simpara>\r
518         Join two or more development histories together.\r
519 </simpara>\r
520 </listitem>\r
521 </varlistentry>\r
522 <varlistentry>\r
523 <term>\r
524 <xref linkend="git-mv(1)" />\r
525 </term>\r
526 <listitem>\r
527 <simpara>\r
528         Move or rename a file, a directory, or a symlink.\r
529 </simpara>\r
530 </listitem>\r
531 </varlistentry>\r
532 <varlistentry>\r
533 <term>\r
534 <xref linkend="git-notes(1)" />\r
535 </term>\r
536 <listitem>\r
537 <simpara>\r
538         Add or inspect object notes.\r
539 </simpara>\r
540 </listitem>\r
541 </varlistentry>\r
542 <varlistentry>\r
543 <term>\r
544 <xref linkend="git-pull(1)" />\r
545 </term>\r
546 <listitem>\r
547 <simpara>\r
548         Fetch from and integrate with another repository or a local branch.\r
549 </simpara>\r
550 </listitem>\r
551 </varlistentry>\r
552 <varlistentry>\r
553 <term>\r
554 <xref linkend="git-push(1)" />\r
555 </term>\r
556 <listitem>\r
557 <simpara>\r
558         Update remote refs along with associated objects.\r
559 </simpara>\r
560 </listitem>\r
561 </varlistentry>\r
562 <varlistentry>\r
563 <term>\r
564 <xref linkend="git-rebase(1)" />\r
565 </term>\r
566 <listitem>\r
567 <simpara>\r
568         Reapply commits on top of another base tip.\r
569 </simpara>\r
570 </listitem>\r
571 </varlistentry>\r
572 <varlistentry>\r
573 <term>\r
574 <xref linkend="git-reset(1)" />\r
575 </term>\r
576 <listitem>\r
577 <simpara>\r
578         Reset current HEAD to the specified state.\r
579 </simpara>\r
580 </listitem>\r
581 </varlistentry>\r
582 <varlistentry>\r
583 <term>\r
584 <xref linkend="git-revert(1)" />\r
585 </term>\r
586 <listitem>\r
587 <simpara>\r
588         Revert some existing commits.\r
589 </simpara>\r
590 </listitem>\r
591 </varlistentry>\r
592 <varlistentry>\r
593 <term>\r
594 <xref linkend="git-rm(1)" />\r
595 </term>\r
596 <listitem>\r
597 <simpara>\r
598         Remove files from the working tree and from the index.\r
599 </simpara>\r
600 </listitem>\r
601 </varlistentry>\r
602 <varlistentry>\r
603 <term>\r
604 <xref linkend="git-shortlog(1)" />\r
605 </term>\r
606 <listitem>\r
607 <simpara>\r
608         Summarize <emphasis>git log</emphasis> output.\r
609 </simpara>\r
610 </listitem>\r
611 </varlistentry>\r
612 <varlistentry>\r
613 <term>\r
614 <xref linkend="git-show(1)" />\r
615 </term>\r
616 <listitem>\r
617 <simpara>\r
618         Show various types of objects.\r
619 </simpara>\r
620 </listitem>\r
621 </varlistentry>\r
622 <varlistentry>\r
623 <term>\r
624 <xref linkend="git-stash(1)" />\r
625 </term>\r
626 <listitem>\r
627 <simpara>\r
628         Stash the changes in a dirty working directory away.\r
629 </simpara>\r
630 </listitem>\r
631 </varlistentry>\r
632 <varlistentry>\r
633 <term>\r
634 <xref linkend="git-status(1)" />\r
635 </term>\r
636 <listitem>\r
637 <simpara>\r
638         Show the working tree status.\r
639 </simpara>\r
640 </listitem>\r
641 </varlistentry>\r
642 <varlistentry>\r
643 <term>\r
644 <xref linkend="git-submodule(1)" />\r
645 </term>\r
646 <listitem>\r
647 <simpara>\r
648         Initialize, update or inspect submodules.\r
649 </simpara>\r
650 </listitem>\r
651 </varlistentry>\r
652 <varlistentry>\r
653 <term>\r
654 <xref linkend="git-tag(1)" />\r
655 </term>\r
656 <listitem>\r
657 <simpara>\r
658         Create, list, delete or verify a tag object signed with GPG.\r
659 </simpara>\r
660 </listitem>\r
661 </varlistentry>\r
662 <varlistentry>\r
663 <term>\r
664 <xref linkend="git-worktree(1)" />\r
665 </term>\r
666 <listitem>\r
667 <simpara>\r
668         Manage multiple working trees.\r
669 </simpara>\r
670 </listitem>\r
671 </varlistentry>\r
672 <varlistentry>\r
673 <term>\r
674 <xref linkend="gitk(1)" />\r
675 </term>\r
676 <listitem>\r
677 <simpara>\r
678         The Git repository browser.\r
679 </simpara>\r
680 </listitem>\r
681 </varlistentry>\r
682 </variablelist>\r
683 </section>\r
684 <section id="git(1)__ancillary_commands">\r
685 <title>Ancillary Commands</title>\r
686 <simpara>Manipulators:</simpara>\r
687 <variablelist>\r
688 <varlistentry>\r
689 <term>\r
690 <xref linkend="git-config(1)" />\r
691 </term>\r
692 <listitem>\r
693 <simpara>\r
694         Get and set repository or global options.\r
695 </simpara>\r
696 </listitem>\r
697 </varlistentry>\r
698 <varlistentry>\r
699 <term>\r
700 <xref linkend="git-fast-export(1)" />\r
701 </term>\r
702 <listitem>\r
703 <simpara>\r
704         Git data exporter.\r
705 </simpara>\r
706 </listitem>\r
707 </varlistentry>\r
708 <varlistentry>\r
709 <term>\r
710 <xref linkend="git-fast-import(1)" />\r
711 </term>\r
712 <listitem>\r
713 <simpara>\r
714         Backend for fast Git data importers.\r
715 </simpara>\r
716 </listitem>\r
717 </varlistentry>\r
718 <varlistentry>\r
719 <term>\r
720 <xref linkend="git-filter-branch(1)" />\r
721 </term>\r
722 <listitem>\r
723 <simpara>\r
724         Rewrite branches.\r
725 </simpara>\r
726 </listitem>\r
727 </varlistentry>\r
728 <varlistentry>\r
729 <term>\r
730 <xref linkend="git-mergetool(1)" />\r
731 </term>\r
732 <listitem>\r
733 <simpara>\r
734         Run merge conflict resolution tools to resolve merge conflicts.\r
735 </simpara>\r
736 </listitem>\r
737 </varlistentry>\r
738 <varlistentry>\r
739 <term>\r
740 <xref linkend="git-pack-refs(1)" />\r
741 </term>\r
742 <listitem>\r
743 <simpara>\r
744         Pack heads and tags for efficient repository access.\r
745 </simpara>\r
746 </listitem>\r
747 </varlistentry>\r
748 <varlistentry>\r
749 <term>\r
750 <xref linkend="git-prune(1)" />\r
751 </term>\r
752 <listitem>\r
753 <simpara>\r
754         Prune all unreachable objects from the object database.\r
755 </simpara>\r
756 </listitem>\r
757 </varlistentry>\r
758 <varlistentry>\r
759 <term>\r
760 <xref linkend="git-reflog(1)" />\r
761 </term>\r
762 <listitem>\r
763 <simpara>\r
764         Manage reflog information.\r
765 </simpara>\r
766 </listitem>\r
767 </varlistentry>\r
768 <varlistentry>\r
769 <term>\r
770 <xref linkend="git-relink(1)" />\r
771 </term>\r
772 <listitem>\r
773 <simpara>\r
774         Hardlink common objects in local repositories.\r
775 </simpara>\r
776 </listitem>\r
777 </varlistentry>\r
778 <varlistentry>\r
779 <term>\r
780 <xref linkend="git-remote(1)" />\r
781 </term>\r
782 <listitem>\r
783 <simpara>\r
784         Manage set of tracked repositories.\r
785 </simpara>\r
786 </listitem>\r
787 </varlistentry>\r
788 <varlistentry>\r
789 <term>\r
790 <xref linkend="git-repack(1)" />\r
791 </term>\r
792 <listitem>\r
793 <simpara>\r
794         Pack unpacked objects in a repository.\r
795 </simpara>\r
796 </listitem>\r
797 </varlistentry>\r
798 <varlistentry>\r
799 <term>\r
800 <xref linkend="git-replace(1)" />\r
801 </term>\r
802 <listitem>\r
803 <simpara>\r
804         Create, list, delete refs to replace objects.\r
805 </simpara>\r
806 </listitem>\r
807 </varlistentry>\r
808 </variablelist>\r
809 <simpara>Interrogators:</simpara>\r
810 <variablelist>\r
811 <varlistentry>\r
812 <term>\r
813 <xref linkend="git-annotate(1)" />\r
814 </term>\r
815 <listitem>\r
816 <simpara>\r
817         Annotate file lines with commit information.\r
818 </simpara>\r
819 </listitem>\r
820 </varlistentry>\r
821 <varlistentry>\r
822 <term>\r
823 <xref linkend="git-blame(1)" />\r
824 </term>\r
825 <listitem>\r
826 <simpara>\r
827         Show what revision and author last modified each line of a file.\r
828 </simpara>\r
829 </listitem>\r
830 </varlistentry>\r
831 <varlistentry>\r
832 <term>\r
833 <xref linkend="git-cherry(1)" />\r
834 </term>\r
835 <listitem>\r
836 <simpara>\r
837         Find commits yet to be applied to upstream.\r
838 </simpara>\r
839 </listitem>\r
840 </varlistentry>\r
841 <varlistentry>\r
842 <term>\r
843 <xref linkend="git-count-objects(1)" />\r
844 </term>\r
845 <listitem>\r
846 <simpara>\r
847         Count unpacked number of objects and their disk consumption.\r
848 </simpara>\r
849 </listitem>\r
850 </varlistentry>\r
851 <varlistentry>\r
852 <term>\r
853 <xref linkend="git-difftool(1)" />\r
854 </term>\r
855 <listitem>\r
856 <simpara>\r
857         Show changes using common diff tools.\r
858 </simpara>\r
859 </listitem>\r
860 </varlistentry>\r
861 <varlistentry>\r
862 <term>\r
863 <xref linkend="git-fsck(1)" />\r
864 </term>\r
865 <listitem>\r
866 <simpara>\r
867         Verifies the connectivity and validity of the objects in the database.\r
868 </simpara>\r
869 </listitem>\r
870 </varlistentry>\r
871 <varlistentry>\r
872 <term>\r
873 <xref linkend="git-get-tar-commit-id(1)" />\r
874 </term>\r
875 <listitem>\r
876 <simpara>\r
877         Extract commit ID from an archive created using git-archive.\r
878 </simpara>\r
879 </listitem>\r
880 </varlistentry>\r
881 <varlistentry>\r
882 <term>\r
883 <xref linkend="git-help(1)" />\r
884 </term>\r
885 <listitem>\r
886 <simpara>\r
887         Display help information about Git.\r
888 </simpara>\r
889 </listitem>\r
890 </varlistentry>\r
891 <varlistentry>\r
892 <term>\r
893 <xref linkend="git-instaweb(1)" />\r
894 </term>\r
895 <listitem>\r
896 <simpara>\r
897         Instantly browse your working repository in gitweb.\r
898 </simpara>\r
899 </listitem>\r
900 </varlistentry>\r
901 <varlistentry>\r
902 <term>\r
903 <xref linkend="git-merge-tree(1)" />\r
904 </term>\r
905 <listitem>\r
906 <simpara>\r
907         Show three-way merge without touching index.\r
908 </simpara>\r
909 </listitem>\r
910 </varlistentry>\r
911 <varlistentry>\r
912 <term>\r
913 <xref linkend="git-rerere(1)" />\r
914 </term>\r
915 <listitem>\r
916 <simpara>\r
917         Reuse recorded resolution of conflicted merges.\r
918 </simpara>\r
919 </listitem>\r
920 </varlistentry>\r
921 <varlistentry>\r
922 <term>\r
923 <xref linkend="git-rev-parse(1)" />\r
924 </term>\r
925 <listitem>\r
926 <simpara>\r
927         Pick out and massage parameters.\r
928 </simpara>\r
929 </listitem>\r
930 </varlistentry>\r
931 <varlistentry>\r
932 <term>\r
933 <xref linkend="git-show-branch(1)" />\r
934 </term>\r
935 <listitem>\r
936 <simpara>\r
937         Show branches and their commits.\r
938 </simpara>\r
939 </listitem>\r
940 </varlistentry>\r
941 <varlistentry>\r
942 <term>\r
943 <xref linkend="git-verify-commit(1)" />\r
944 </term>\r
945 <listitem>\r
946 <simpara>\r
947         Check the GPG signature of commits.\r
948 </simpara>\r
949 </listitem>\r
950 </varlistentry>\r
951 <varlistentry>\r
952 <term>\r
953 <xref linkend="git-verify-tag(1)" />\r
954 </term>\r
955 <listitem>\r
956 <simpara>\r
957         Check the GPG signature of tags.\r
958 </simpara>\r
959 </listitem>\r
960 </varlistentry>\r
961 <varlistentry>\r
962 <term>\r
963 <xref linkend="git-whatchanged(1)" />\r
964 </term>\r
965 <listitem>\r
966 <simpara>\r
967         Show logs with difference each commit introduces.\r
968 </simpara>\r
969 </listitem>\r
970 </varlistentry>\r
971 <varlistentry>\r
972 <term>\r
973 <xref linkend="gitweb(1)" />\r
974 </term>\r
975 <listitem>\r
976 <simpara>\r
977         Git web interface (web frontend to Git repositories).\r
978 </simpara>\r
979 </listitem>\r
980 </varlistentry>\r
981 </variablelist>\r
982 </section>\r
983 <section id="git(1)__interacting_with_others">\r
984 <title>Interacting with Others</title>\r
985 <simpara>These commands are to interact with foreign SCM and with other\r
986 people via patch over e-mail.</simpara>\r
987 <variablelist>\r
988 <varlistentry>\r
989 <term>\r
990 <xref linkend="git-archimport(1)" />\r
991 </term>\r
992 <listitem>\r
993 <simpara>\r
994         Import an Arch repository into Git.\r
995 </simpara>\r
996 </listitem>\r
997 </varlistentry>\r
998 <varlistentry>\r
999 <term>\r
1000 <xref linkend="git-cvsexportcommit(1)" />\r
1001 </term>\r
1002 <listitem>\r
1003 <simpara>\r
1004         Export a single commit to a CVS checkout.\r
1005 </simpara>\r
1006 </listitem>\r
1007 </varlistentry>\r
1008 <varlistentry>\r
1009 <term>\r
1010 <xref linkend="git-cvsimport(1)" />\r
1011 </term>\r
1012 <listitem>\r
1013 <simpara>\r
1014         Salvage your data out of another SCM people love to hate.\r
1015 </simpara>\r
1016 </listitem>\r
1017 </varlistentry>\r
1018 <varlistentry>\r
1019 <term>\r
1020 <xref linkend="git-cvsserver(1)" />\r
1021 </term>\r
1022 <listitem>\r
1023 <simpara>\r
1024         A CVS server emulator for Git.\r
1025 </simpara>\r
1026 </listitem>\r
1027 </varlistentry>\r
1028 <varlistentry>\r
1029 <term>\r
1030 <xref linkend="git-imap-send(1)" />\r
1031 </term>\r
1032 <listitem>\r
1033 <simpara>\r
1034         Send a collection of patches from stdin to an IMAP folder.\r
1035 </simpara>\r
1036 </listitem>\r
1037 </varlistentry>\r
1038 <varlistentry>\r
1039 <term>\r
1040 <xref linkend="git-p4(1)" />\r
1041 </term>\r
1042 <listitem>\r
1043 <simpara>\r
1044         Import from and submit to Perforce repositories.\r
1045 </simpara>\r
1046 </listitem>\r
1047 </varlistentry>\r
1048 <varlistentry>\r
1049 <term>\r
1050 <xref linkend="git-quiltimport(1)" />\r
1051 </term>\r
1052 <listitem>\r
1053 <simpara>\r
1054         Applies a quilt patchset onto the current branch.\r
1055 </simpara>\r
1056 </listitem>\r
1057 </varlistentry>\r
1058 <varlistentry>\r
1059 <term>\r
1060 <xref linkend="git-request-pull(1)" />\r
1061 </term>\r
1062 <listitem>\r
1063 <simpara>\r
1064         Generates a summary of pending changes.\r
1065 </simpara>\r
1066 </listitem>\r
1067 </varlistentry>\r
1068 <varlistentry>\r
1069 <term>\r
1070 <xref linkend="git-send-email(1)" />\r
1071 </term>\r
1072 <listitem>\r
1073 <simpara>\r
1074         Send a collection of patches as emails.\r
1075 </simpara>\r
1076 </listitem>\r
1077 </varlistentry>\r
1078 <varlistentry>\r
1079 <term>\r
1080 <xref linkend="git-svn(1)" />\r
1081 </term>\r
1082 <listitem>\r
1083 <simpara>\r
1084         Bidirectional operation between a Subversion repository and Git.\r
1085 </simpara>\r
1086 </listitem>\r
1087 </varlistentry>\r
1088 </variablelist>\r
1089 </section>\r
1090 </simplesect>\r
1091 <simplesect id="git(1)__low_level_commands_plumbing">\r
1092 <title>Low-level commands (plumbing)</title>\r
1093 <simpara>Although Git includes its\r
1094 own porcelain layer, its low-level commands are sufficient to support\r
1095 development of alternative porcelains.  Developers of such porcelains\r
1096 might start by reading about <xref linkend="git-update-index(1)" /> and\r
1097 <xref linkend="git-read-tree(1)" />.</simpara>\r
1098 <simpara>The interface (input, output, set of options and the semantics)\r
1099 to these low-level commands are meant to be a lot more stable\r
1100 than Porcelain level commands, because these commands are\r
1101 primarily for scripted use.  The interface to Porcelain commands\r
1102 on the other hand are subject to change in order to improve the\r
1103 end user experience.</simpara>\r
1104 <simpara>The following description divides\r
1105 the low-level commands into commands that manipulate objects (in\r
1106 the repository, index, and working tree), commands that interrogate and\r
1107 compare objects, and commands that move objects and references between\r
1108 repositories.</simpara>\r
1109 <section id="git(1)__manipulation_commands">\r
1110 <title>Manipulation commands</title>\r
1111 <variablelist>\r
1112 <varlistentry>\r
1113 <term>\r
1114 <xref linkend="git-apply(1)" />\r
1115 </term>\r
1116 <listitem>\r
1117 <simpara>\r
1118         Apply a patch to files and/or to the index.\r
1119 </simpara>\r
1120 </listitem>\r
1121 </varlistentry>\r
1122 <varlistentry>\r
1123 <term>\r
1124 <xref linkend="git-checkout-index(1)" />\r
1125 </term>\r
1126 <listitem>\r
1127 <simpara>\r
1128         Copy files from the index to the working tree.\r
1129 </simpara>\r
1130 </listitem>\r
1131 </varlistentry>\r
1132 <varlistentry>\r
1133 <term>\r
1134 <xref linkend="git-commit-tree(1)" />\r
1135 </term>\r
1136 <listitem>\r
1137 <simpara>\r
1138         Create a new commit object.\r
1139 </simpara>\r
1140 </listitem>\r
1141 </varlistentry>\r
1142 <varlistentry>\r
1143 <term>\r
1144 <xref linkend="git-hash-object(1)" />\r
1145 </term>\r
1146 <listitem>\r
1147 <simpara>\r
1148         Compute object ID and optionally creates a blob from a file.\r
1149 </simpara>\r
1150 </listitem>\r
1151 </varlistentry>\r
1152 <varlistentry>\r
1153 <term>\r
1154 <xref linkend="git-index-pack(1)" />\r
1155 </term>\r
1156 <listitem>\r
1157 <simpara>\r
1158         Build pack index file for an existing packed archive.\r
1159 </simpara>\r
1160 </listitem>\r
1161 </varlistentry>\r
1162 <varlistentry>\r
1163 <term>\r
1164 <xref linkend="git-merge-file(1)" />\r
1165 </term>\r
1166 <listitem>\r
1167 <simpara>\r
1168         Run a three-way file merge.\r
1169 </simpara>\r
1170 </listitem>\r
1171 </varlistentry>\r
1172 <varlistentry>\r
1173 <term>\r
1174 <xref linkend="git-merge-index(1)" />\r
1175 </term>\r
1176 <listitem>\r
1177 <simpara>\r
1178         Run a merge for files needing merging.\r
1179 </simpara>\r
1180 </listitem>\r
1181 </varlistentry>\r
1182 <varlistentry>\r
1183 <term>\r
1184 <xref linkend="git-mktag(1)" />\r
1185 </term>\r
1186 <listitem>\r
1187 <simpara>\r
1188         Creates a tag object.\r
1189 </simpara>\r
1190 </listitem>\r
1191 </varlistentry>\r
1192 <varlistentry>\r
1193 <term>\r
1194 <xref linkend="git-mktree(1)" />\r
1195 </term>\r
1196 <listitem>\r
1197 <simpara>\r
1198         Build a tree-object from ls-tree formatted text.\r
1199 </simpara>\r
1200 </listitem>\r
1201 </varlistentry>\r
1202 <varlistentry>\r
1203 <term>\r
1204 <xref linkend="git-pack-objects(1)" />\r
1205 </term>\r
1206 <listitem>\r
1207 <simpara>\r
1208         Create a packed archive of objects.\r
1209 </simpara>\r
1210 </listitem>\r
1211 </varlistentry>\r
1212 <varlistentry>\r
1213 <term>\r
1214 <xref linkend="git-prune-packed(1)" />\r
1215 </term>\r
1216 <listitem>\r
1217 <simpara>\r
1218         Remove extra objects that are already in pack files.\r
1219 </simpara>\r
1220 </listitem>\r
1221 </varlistentry>\r
1222 <varlistentry>\r
1223 <term>\r
1224 <xref linkend="git-read-tree(1)" />\r
1225 </term>\r
1226 <listitem>\r
1227 <simpara>\r
1228         Reads tree information into the index.\r
1229 </simpara>\r
1230 </listitem>\r
1231 </varlistentry>\r
1232 <varlistentry>\r
1233 <term>\r
1234 <xref linkend="git-symbolic-ref(1)" />\r
1235 </term>\r
1236 <listitem>\r
1237 <simpara>\r
1238         Read, modify and delete symbolic refs.\r
1239 </simpara>\r
1240 </listitem>\r
1241 </varlistentry>\r
1242 <varlistentry>\r
1243 <term>\r
1244 <xref linkend="git-unpack-objects(1)" />\r
1245 </term>\r
1246 <listitem>\r
1247 <simpara>\r
1248         Unpack objects from a packed archive.\r
1249 </simpara>\r
1250 </listitem>\r
1251 </varlistentry>\r
1252 <varlistentry>\r
1253 <term>\r
1254 <xref linkend="git-update-index(1)" />\r
1255 </term>\r
1256 <listitem>\r
1257 <simpara>\r
1258         Register file contents in the working tree to the index.\r
1259 </simpara>\r
1260 </listitem>\r
1261 </varlistentry>\r
1262 <varlistentry>\r
1263 <term>\r
1264 <xref linkend="git-update-ref(1)" />\r
1265 </term>\r
1266 <listitem>\r
1267 <simpara>\r
1268         Update the object name stored in a ref safely.\r
1269 </simpara>\r
1270 </listitem>\r
1271 </varlistentry>\r
1272 <varlistentry>\r
1273 <term>\r
1274 <xref linkend="git-write-tree(1)" />\r
1275 </term>\r
1276 <listitem>\r
1277 <simpara>\r
1278         Create a tree object from the current index.\r
1279 </simpara>\r
1280 </listitem>\r
1281 </varlistentry>\r
1282 </variablelist>\r
1283 </section>\r
1284 <section id="git(1)__interrogation_commands">\r
1285 <title>Interrogation commands</title>\r
1286 <variablelist>\r
1287 <varlistentry>\r
1288 <term>\r
1289 <xref linkend="git-cat-file(1)" />\r
1290 </term>\r
1291 <listitem>\r
1292 <simpara>\r
1293         Provide content or type and size information for repository objects.\r
1294 </simpara>\r
1295 </listitem>\r
1296 </varlistentry>\r
1297 <varlistentry>\r
1298 <term>\r
1299 <xref linkend="git-diff-files(1)" />\r
1300 </term>\r
1301 <listitem>\r
1302 <simpara>\r
1303         Compares files in the working tree and the index.\r
1304 </simpara>\r
1305 </listitem>\r
1306 </varlistentry>\r
1307 <varlistentry>\r
1308 <term>\r
1309 <xref linkend="git-diff-index(1)" />\r
1310 </term>\r
1311 <listitem>\r
1312 <simpara>\r
1313         Compare a tree to the working tree or index.\r
1314 </simpara>\r
1315 </listitem>\r
1316 </varlistentry>\r
1317 <varlistentry>\r
1318 <term>\r
1319 <xref linkend="git-diff-tree(1)" />\r
1320 </term>\r
1321 <listitem>\r
1322 <simpara>\r
1323         Compares the content and mode of blobs found via two tree objects.\r
1324 </simpara>\r
1325 </listitem>\r
1326 </varlistentry>\r
1327 <varlistentry>\r
1328 <term>\r
1329 <xref linkend="git-for-each-ref(1)" />\r
1330 </term>\r
1331 <listitem>\r
1332 <simpara>\r
1333         Output information on each ref.\r
1334 </simpara>\r
1335 </listitem>\r
1336 </varlistentry>\r
1337 <varlistentry>\r
1338 <term>\r
1339 <xref linkend="git-ls-files(1)" />\r
1340 </term>\r
1341 <listitem>\r
1342 <simpara>\r
1343         Show information about files in the index and the working tree.\r
1344 </simpara>\r
1345 </listitem>\r
1346 </varlistentry>\r
1347 <varlistentry>\r
1348 <term>\r
1349 <xref linkend="git-ls-remote(1)" />\r
1350 </term>\r
1351 <listitem>\r
1352 <simpara>\r
1353         List references in a remote repository.\r
1354 </simpara>\r
1355 </listitem>\r
1356 </varlistentry>\r
1357 <varlistentry>\r
1358 <term>\r
1359 <xref linkend="git-ls-tree(1)" />\r
1360 </term>\r
1361 <listitem>\r
1362 <simpara>\r
1363         List the contents of a tree object.\r
1364 </simpara>\r
1365 </listitem>\r
1366 </varlistentry>\r
1367 <varlistentry>\r
1368 <term>\r
1369 <xref linkend="git-merge-base(1)" />\r
1370 </term>\r
1371 <listitem>\r
1372 <simpara>\r
1373         Find as good common ancestors as possible for a merge.\r
1374 </simpara>\r
1375 </listitem>\r
1376 </varlistentry>\r
1377 <varlistentry>\r
1378 <term>\r
1379 <xref linkend="git-name-rev(1)" />\r
1380 </term>\r
1381 <listitem>\r
1382 <simpara>\r
1383         Find symbolic names for given revs.\r
1384 </simpara>\r
1385 </listitem>\r
1386 </varlistentry>\r
1387 <varlistentry>\r
1388 <term>\r
1389 <xref linkend="git-pack-redundant(1)" />\r
1390 </term>\r
1391 <listitem>\r
1392 <simpara>\r
1393         Find redundant pack files.\r
1394 </simpara>\r
1395 </listitem>\r
1396 </varlistentry>\r
1397 <varlistentry>\r
1398 <term>\r
1399 <xref linkend="git-rev-list(1)" />\r
1400 </term>\r
1401 <listitem>\r
1402 <simpara>\r
1403         Lists commit objects in reverse chronological order.\r
1404 </simpara>\r
1405 </listitem>\r
1406 </varlistentry>\r
1407 <varlistentry>\r
1408 <term>\r
1409 <xref linkend="git-show-index(1)" />\r
1410 </term>\r
1411 <listitem>\r
1412 <simpara>\r
1413         Show packed archive index.\r
1414 </simpara>\r
1415 </listitem>\r
1416 </varlistentry>\r
1417 <varlistentry>\r
1418 <term>\r
1419 <xref linkend="git-show-ref(1)" />\r
1420 </term>\r
1421 <listitem>\r
1422 <simpara>\r
1423         List references in a local repository.\r
1424 </simpara>\r
1425 </listitem>\r
1426 </varlistentry>\r
1427 <varlistentry>\r
1428 <term>\r
1429 <xref linkend="git-unpack-file(1)" />\r
1430 </term>\r
1431 <listitem>\r
1432 <simpara>\r
1433         Creates a temporary file with a blob's contents.\r
1434 </simpara>\r
1435 </listitem>\r
1436 </varlistentry>\r
1437 <varlistentry>\r
1438 <term>\r
1439 <xref linkend="git-var(1)" />\r
1440 </term>\r
1441 <listitem>\r
1442 <simpara>\r
1443         Show a Git logical variable.\r
1444 </simpara>\r
1445 </listitem>\r
1446 </varlistentry>\r
1447 <varlistentry>\r
1448 <term>\r
1449 <xref linkend="git-verify-pack(1)" />\r
1450 </term>\r
1451 <listitem>\r
1452 <simpara>\r
1453         Validate packed Git archive files.\r
1454 </simpara>\r
1455 </listitem>\r
1456 </varlistentry>\r
1457 </variablelist>\r
1458 <simpara>In general, the interrogate commands do not touch the files in\r
1459 the working tree.</simpara>\r
1460 </section>\r
1461 <section id="git(1)__synching_repositories">\r
1462 <title>Synching repositories</title>\r
1463 <variablelist>\r
1464 <varlistentry>\r
1465 <term>\r
1466 <xref linkend="git-daemon(1)" />\r
1467 </term>\r
1468 <listitem>\r
1469 <simpara>\r
1470         A really simple server for Git repositories.\r
1471 </simpara>\r
1472 </listitem>\r
1473 </varlistentry>\r
1474 <varlistentry>\r
1475 <term>\r
1476 <xref linkend="git-fetch-pack(1)" />\r
1477 </term>\r
1478 <listitem>\r
1479 <simpara>\r
1480         Receive missing objects from another repository.\r
1481 </simpara>\r
1482 </listitem>\r
1483 </varlistentry>\r
1484 <varlistentry>\r
1485 <term>\r
1486 <xref linkend="git-http-backend(1)" />\r
1487 </term>\r
1488 <listitem>\r
1489 <simpara>\r
1490         Server side implementation of Git over HTTP.\r
1491 </simpara>\r
1492 </listitem>\r
1493 </varlistentry>\r
1494 <varlistentry>\r
1495 <term>\r
1496 <xref linkend="git-send-pack(1)" />\r
1497 </term>\r
1498 <listitem>\r
1499 <simpara>\r
1500         Push objects over Git protocol to another repository.\r
1501 </simpara>\r
1502 </listitem>\r
1503 </varlistentry>\r
1504 <varlistentry>\r
1505 <term>\r
1506 <xref linkend="git-update-server-info(1)" />\r
1507 </term>\r
1508 <listitem>\r
1509 <simpara>\r
1510         Update auxiliary info file to help dumb servers.\r
1511 </simpara>\r
1512 </listitem>\r
1513 </varlistentry>\r
1514 </variablelist>\r
1515 <simpara>The following are helper commands used by the above; end users\r
1516 typically do not use them directly.</simpara>\r
1517 <variablelist>\r
1518 <varlistentry>\r
1519 <term>\r
1520 <xref linkend="git-http-fetch(1)" />\r
1521 </term>\r
1522 <listitem>\r
1523 <simpara>\r
1524         Download from a remote Git repository via HTTP.\r
1525 </simpara>\r
1526 </listitem>\r
1527 </varlistentry>\r
1528 <varlistentry>\r
1529 <term>\r
1530 <xref linkend="git-http-push(1)" />\r
1531 </term>\r
1532 <listitem>\r
1533 <simpara>\r
1534         Push objects over HTTP/DAV to another repository.\r
1535 </simpara>\r
1536 </listitem>\r
1537 </varlistentry>\r
1538 <varlistentry>\r
1539 <term>\r
1540 <xref linkend="git-parse-remote(1)" />\r
1541 </term>\r
1542 <listitem>\r
1543 <simpara>\r
1544         Routines to help parsing remote repository access parameters.\r
1545 </simpara>\r
1546 </listitem>\r
1547 </varlistentry>\r
1548 <varlistentry>\r
1549 <term>\r
1550 <xref linkend="git-receive-pack(1)" />\r
1551 </term>\r
1552 <listitem>\r
1553 <simpara>\r
1554         Receive what is pushed into the repository.\r
1555 </simpara>\r
1556 </listitem>\r
1557 </varlistentry>\r
1558 <varlistentry>\r
1559 <term>\r
1560 <xref linkend="git-shell(1)" />\r
1561 </term>\r
1562 <listitem>\r
1563 <simpara>\r
1564         Restricted login shell for Git-only SSH access.\r
1565 </simpara>\r
1566 </listitem>\r
1567 </varlistentry>\r
1568 <varlistentry>\r
1569 <term>\r
1570 <xref linkend="git-upload-archive(1)" />\r
1571 </term>\r
1572 <listitem>\r
1573 <simpara>\r
1574         Send archive back to git-archive.\r
1575 </simpara>\r
1576 </listitem>\r
1577 </varlistentry>\r
1578 <varlistentry>\r
1579 <term>\r
1580 <xref linkend="git-upload-pack(1)" />\r
1581 </term>\r
1582 <listitem>\r
1583 <simpara>\r
1584         Send objects packed back to git-fetch-pack.\r
1585 </simpara>\r
1586 </listitem>\r
1587 </varlistentry>\r
1588 </variablelist>\r
1589 </section>\r
1590 <section id="git(1)__internal_helper_commands">\r
1591 <title>Internal helper commands</title>\r
1592 <simpara>These are internal helper commands used by other commands; end\r
1593 users typically do not use them directly.</simpara>\r
1594 <variablelist>\r
1595 <varlistentry>\r
1596 <term>\r
1597 <xref linkend="git-check-attr(1)" />\r
1598 </term>\r
1599 <listitem>\r
1600 <simpara>\r
1601         Display gitattributes information.\r
1602 </simpara>\r
1603 </listitem>\r
1604 </varlistentry>\r
1605 <varlistentry>\r
1606 <term>\r
1607 <xref linkend="git-check-ignore(1)" />\r
1608 </term>\r
1609 <listitem>\r
1610 <simpara>\r
1611         Debug gitignore / exclude files.\r
1612 </simpara>\r
1613 </listitem>\r
1614 </varlistentry>\r
1615 <varlistentry>\r
1616 <term>\r
1617 <xref linkend="git-check-mailmap(1)" />\r
1618 </term>\r
1619 <listitem>\r
1620 <simpara>\r
1621         Show canonical names and email addresses of contacts.\r
1622 </simpara>\r
1623 </listitem>\r
1624 </varlistentry>\r
1625 <varlistentry>\r
1626 <term>\r
1627 <xref linkend="git-check-ref-format(1)" />\r
1628 </term>\r
1629 <listitem>\r
1630 <simpara>\r
1631         Ensures that a reference name is well formed.\r
1632 </simpara>\r
1633 </listitem>\r
1634 </varlistentry>\r
1635 <varlistentry>\r
1636 <term>\r
1637 <xref linkend="git-column(1)" />\r
1638 </term>\r
1639 <listitem>\r
1640 <simpara>\r
1641         Display data in columns.\r
1642 </simpara>\r
1643 </listitem>\r
1644 </varlistentry>\r
1645 <varlistentry>\r
1646 <term>\r
1647 <xref linkend="git-credential(1)" />\r
1648 </term>\r
1649 <listitem>\r
1650 <simpara>\r
1651         Retrieve and store user credentials.\r
1652 </simpara>\r
1653 </listitem>\r
1654 </varlistentry>\r
1655 <varlistentry>\r
1656 <term>\r
1657 <xref linkend="git-credential-cache(1)" />\r
1658 </term>\r
1659 <listitem>\r
1660 <simpara>\r
1661         Helper to temporarily store passwords in memory.\r
1662 </simpara>\r
1663 </listitem>\r
1664 </varlistentry>\r
1665 <varlistentry>\r
1666 <term>\r
1667 <xref linkend="git-credential-store(1)" />\r
1668 </term>\r
1669 <listitem>\r
1670 <simpara>\r
1671         Helper to store credentials on disk.\r
1672 </simpara>\r
1673 </listitem>\r
1674 </varlistentry>\r
1675 <varlistentry>\r
1676 <term>\r
1677 <xref linkend="git-fmt-merge-msg(1)" />\r
1678 </term>\r
1679 <listitem>\r
1680 <simpara>\r
1681         Produce a merge commit message.\r
1682 </simpara>\r
1683 </listitem>\r
1684 </varlistentry>\r
1685 <varlistentry>\r
1686 <term>\r
1687 <xref linkend="git-interpret-trailers(1)" />\r
1688 </term>\r
1689 <listitem>\r
1690 <simpara>\r
1691         help add structured information into commit messages.\r
1692 </simpara>\r
1693 </listitem>\r
1694 </varlistentry>\r
1695 <varlistentry>\r
1696 <term>\r
1697 <xref linkend="git-mailinfo(1)" />\r
1698 </term>\r
1699 <listitem>\r
1700 <simpara>\r
1701         Extracts patch and authorship from a single e-mail message.\r
1702 </simpara>\r
1703 </listitem>\r
1704 </varlistentry>\r
1705 <varlistentry>\r
1706 <term>\r
1707 <xref linkend="git-mailsplit(1)" />\r
1708 </term>\r
1709 <listitem>\r
1710 <simpara>\r
1711         Simple UNIX mbox splitter program.\r
1712 </simpara>\r
1713 </listitem>\r
1714 </varlistentry>\r
1715 <varlistentry>\r
1716 <term>\r
1717 <xref linkend="git-merge-one-file(1)" />\r
1718 </term>\r
1719 <listitem>\r
1720 <simpara>\r
1721         The standard helper program to use with git-merge-index.\r
1722 </simpara>\r
1723 </listitem>\r
1724 </varlistentry>\r
1725 <varlistentry>\r
1726 <term>\r
1727 <xref linkend="git-patch-id(1)" />\r
1728 </term>\r
1729 <listitem>\r
1730 <simpara>\r
1731         Compute unique ID for a patch.\r
1732 </simpara>\r
1733 </listitem>\r
1734 </varlistentry>\r
1735 <varlistentry>\r
1736 <term>\r
1737 <xref linkend="git-sh-i18n(1)" />\r
1738 </term>\r
1739 <listitem>\r
1740 <simpara>\r
1741         Git's i18n setup code for shell scripts.\r
1742 </simpara>\r
1743 </listitem>\r
1744 </varlistentry>\r
1745 <varlistentry>\r
1746 <term>\r
1747 <xref linkend="git-sh-setup(1)" />\r
1748 </term>\r
1749 <listitem>\r
1750 <simpara>\r
1751         Common Git shell script setup code.\r
1752 </simpara>\r
1753 </listitem>\r
1754 </varlistentry>\r
1755 <varlistentry>\r
1756 <term>\r
1757 <xref linkend="git-stripspace(1)" />\r
1758 </term>\r
1759 <listitem>\r
1760 <simpara>\r
1761         Remove unnecessary whitespace.\r
1762 </simpara>\r
1763 </listitem>\r
1764 </varlistentry>\r
1765 </variablelist>\r
1766 </section>\r
1767 </simplesect>\r
1768 <simplesect id="git(1)__configuration_mechanism">\r
1769 <title>Configuration Mechanism</title>\r
1770 <simpara>Git uses a simple text format to store customizations that are per\r
1771 repository and are per user.  Such a configuration file may look\r
1772 like this:</simpara>\r
1773 <screen>#\r
1774 # A '#' or ';' character indicates a comment.\r
1777 ; core variables\r
1778 [core]\r
1779         ; Don't trust file modes\r
1780         filemode = false\r
1782 ; user identity\r
1783 [user]\r
1784         name = "Junio C Hamano"\r
1785         email = "gitster@pobox.com"</screen>\r
1786 <simpara>Various commands read from the configuration file and adjust\r
1787 their operation accordingly.  See <xref linkend="git-config(1)" /> for a\r
1788 list and more details about the configuration mechanism.</simpara>\r
1789 </simplesect>\r
1790 <simplesect id="git(1)__identifier_terminology">\r
1791 <title>Identifier Terminology</title>\r
1792 <variablelist>\r
1793 <varlistentry>\r
1794 <term>\r
1795 &lt;object&gt;\r
1796 </term>\r
1797 <listitem>\r
1798 <simpara>\r
1799         Indicates the object name for any type of object.\r
1800 </simpara>\r
1801 </listitem>\r
1802 </varlistentry>\r
1803 <varlistentry>\r
1804 <term>\r
1805 &lt;blob&gt;\r
1806 </term>\r
1807 <listitem>\r
1808 <simpara>\r
1809         Indicates a blob object name.\r
1810 </simpara>\r
1811 </listitem>\r
1812 </varlistentry>\r
1813 <varlistentry>\r
1814 <term>\r
1815 &lt;tree&gt;\r
1816 </term>\r
1817 <listitem>\r
1818 <simpara>\r
1819         Indicates a tree object name.\r
1820 </simpara>\r
1821 </listitem>\r
1822 </varlistentry>\r
1823 <varlistentry>\r
1824 <term>\r
1825 &lt;commit&gt;\r
1826 </term>\r
1827 <listitem>\r
1828 <simpara>\r
1829         Indicates a commit object name.\r
1830 </simpara>\r
1831 </listitem>\r
1832 </varlistentry>\r
1833 <varlistentry>\r
1834 <term>\r
1835 &lt;tree-ish&gt;\r
1836 </term>\r
1837 <listitem>\r
1838 <simpara>\r
1839         Indicates a tree, commit or tag object name.  A\r
1840         command that takes a &lt;tree-ish&gt; argument ultimately wants to\r
1841         operate on a &lt;tree&gt; object but automatically dereferences\r
1842         &lt;commit&gt; and &lt;tag&gt; objects that point at a &lt;tree&gt;.\r
1843 </simpara>\r
1844 </listitem>\r
1845 </varlistentry>\r
1846 <varlistentry>\r
1847 <term>\r
1848 &lt;commit-ish&gt;\r
1849 </term>\r
1850 <listitem>\r
1851 <simpara>\r
1852         Indicates a commit or tag object name.  A\r
1853         command that takes a &lt;commit-ish&gt; argument ultimately wants to\r
1854         operate on a &lt;commit&gt; object but automatically dereferences\r
1855         &lt;tag&gt; objects that point at a &lt;commit&gt;.\r
1856 </simpara>\r
1857 </listitem>\r
1858 </varlistentry>\r
1859 <varlistentry>\r
1860 <term>\r
1861 &lt;type&gt;\r
1862 </term>\r
1863 <listitem>\r
1864 <simpara>\r
1865         Indicates that an object type is required.\r
1866         Currently one of: <emphasis>blob</emphasis>, <emphasis>tree</emphasis>, <emphasis>commit</emphasis>, or <emphasis>tag</emphasis>.\r
1867 </simpara>\r
1868 </listitem>\r
1869 </varlistentry>\r
1870 <varlistentry>\r
1871 <term>\r
1872 &lt;file&gt;\r
1873 </term>\r
1874 <listitem>\r
1875 <simpara>\r
1876         Indicates a filename - almost always relative to the\r
1877         root of the tree structure <emphasis>GIT_INDEX_FILE</emphasis> describes.\r
1878 </simpara>\r
1879 </listitem>\r
1880 </varlistentry>\r
1881 </variablelist>\r
1882 </simplesect>\r
1883 <simplesect id="git(1)__symbolic_identifiers">\r
1884 <title>Symbolic Identifiers</title>\r
1885 <simpara>Any Git command accepting any &lt;object&gt; can also use the following\r
1886 symbolic notation:</simpara>\r
1887 <variablelist>\r
1888 <varlistentry>\r
1889 <term>\r
1890 HEAD\r
1891 </term>\r
1892 <listitem>\r
1893 <simpara>\r
1894         indicates the head of the current branch.\r
1895 </simpara>\r
1896 </listitem>\r
1897 </varlistentry>\r
1898 <varlistentry>\r
1899 <term>\r
1900 &lt;tag&gt;\r
1901 </term>\r
1902 <listitem>\r
1903 <simpara>\r
1904         a valid tag <emphasis>name</emphasis>\r
1905         (i.e. a <emphasis>refs/tags/&lt;tag&gt;</emphasis> reference).\r
1906 </simpara>\r
1907 </listitem>\r
1908 </varlistentry>\r
1909 <varlistentry>\r
1910 <term>\r
1911 &lt;head&gt;\r
1912 </term>\r
1913 <listitem>\r
1914 <simpara>\r
1915         a valid head <emphasis>name</emphasis>\r
1916         (i.e. a <emphasis>refs/heads/&lt;head&gt;</emphasis> reference).\r
1917 </simpara>\r
1918 </listitem>\r
1919 </varlistentry>\r
1920 </variablelist>\r
1921 <simpara>For a more complete list of ways to spell object names, see\r
1922 "SPECIFYING REVISIONS" section in <xref linkend="gitrevisions(7)" />.</simpara>\r
1923 </simplesect>\r
1924 <simplesect id="git(1)__file_directory_structure">\r
1925 <title>File/Directory Structure</title>\r
1926 <simpara>Please see the <xref linkend="gitrepository-layout(5)" /> document.</simpara>\r
1927 <simpara>Read <xref linkend="githooks(5)" /> for more details about each hook.</simpara>\r
1928 <simpara>Higher level SCMs may provide and manage additional information in the\r
1929 <emphasis>$GIT_DIR</emphasis>.</simpara>\r
1930 </simplesect>\r
1931 <simplesect id="git(1)__terminology">\r
1932 <title>Terminology</title>\r
1933 <simpara>Please see <xref linkend="gitglossary(7)" />.</simpara>\r
1934 </simplesect>\r
1935 <simplesect id="git(1)__environment_variables">\r
1936 <title>Environment Variables</title>\r
1937 <simpara>Various Git commands use the following environment variables:</simpara>\r
1938 <section id="git(1)__the_git_repository">\r
1939 <title>The Git Repository</title>\r
1940 <simpara>These environment variables apply to <emphasis>all</emphasis> core Git commands. Nb: it\r
1941 is worth noting that they may be used/overridden by SCMS sitting above\r
1942 Git so take care if using a foreign front-end.</simpara>\r
1943 <variablelist>\r
1944 <varlistentry>\r
1945 <term>\r
1946 <emphasis>GIT_INDEX_FILE</emphasis>\r
1947 </term>\r
1948 <listitem>\r
1949 <simpara>\r
1950         This environment allows the specification of an alternate\r
1951         index file. If not specified, the default of <emphasis>$GIT_DIR/index</emphasis>\r
1952         is used.\r
1953 </simpara>\r
1954 </listitem>\r
1955 </varlistentry>\r
1956 <varlistentry>\r
1957 <term>\r
1958 <emphasis>GIT_INDEX_VERSION</emphasis>\r
1959 </term>\r
1960 <listitem>\r
1961 <simpara>\r
1962         This environment variable allows the specification of an index\r
1963         version for new repositories.  It won't affect existing index\r
1964         files.  By default index file version 2 or 3 is used. See\r
1965         <xref linkend="git-update-index(1)" /> for more information.\r
1966 </simpara>\r
1967 </listitem>\r
1968 </varlistentry>\r
1969 <varlistentry>\r
1970 <term>\r
1971 <emphasis>GIT_OBJECT_DIRECTORY</emphasis>\r
1972 </term>\r
1973 <listitem>\r
1974 <simpara>\r
1975         If the object storage directory is specified via this\r
1976         environment variable then the sha1 directories are created\r
1977         underneath - otherwise the default <emphasis>$GIT_DIR/objects</emphasis>\r
1978         directory is used.\r
1979 </simpara>\r
1980 </listitem>\r
1981 </varlistentry>\r
1982 <varlistentry>\r
1983 <term>\r
1984 <emphasis>GIT_ALTERNATE_OBJECT_DIRECTORIES</emphasis>\r
1985 </term>\r
1986 <listitem>\r
1987 <simpara>\r
1988         Due to the immutable nature of Git objects, old objects can be\r
1989         archived into shared, read-only directories. This variable\r
1990         specifies a ":" separated (on Windows ";" separated) list\r
1991         of Git object directories which can be used to search for Git\r
1992         objects. New objects will not be written to these directories.\r
1993 </simpara>\r
1994 </listitem>\r
1995 </varlistentry>\r
1996 <varlistentry>\r
1997 <term>\r
1998 <emphasis>GIT_DIR</emphasis>\r
1999 </term>\r
2000 <listitem>\r
2001 <simpara>\r
2002         If the <emphasis>GIT_DIR</emphasis> environment variable is set then it\r
2003         specifies a path to use instead of the default <emphasis>.git</emphasis>\r
2004         for the base of the repository.\r
2005         The <emphasis>--git-dir</emphasis> command-line option also sets this value.\r
2006 </simpara>\r
2007 </listitem>\r
2008 </varlistentry>\r
2009 <varlistentry>\r
2010 <term>\r
2011 <emphasis>GIT_WORK_TREE</emphasis>\r
2012 </term>\r
2013 <listitem>\r
2014 <simpara>\r
2015         Set the path to the root of the working tree.\r
2016         This can also be controlled by the <emphasis>--work-tree</emphasis> command-line\r
2017         option and the core.worktree configuration variable.\r
2018 </simpara>\r
2019 </listitem>\r
2020 </varlistentry>\r
2021 <varlistentry>\r
2022 <term>\r
2023 <emphasis>GIT_NAMESPACE</emphasis>\r
2024 </term>\r
2025 <listitem>\r
2026 <simpara>\r
2027         Set the Git namespace; see <xref linkend="gitnamespaces(7)" /> for details.\r
2028         The <emphasis>--namespace</emphasis> command-line option also sets this value.\r
2029 </simpara>\r
2030 </listitem>\r
2031 </varlistentry>\r
2032 <varlistentry>\r
2033 <term>\r
2034 <emphasis>GIT_CEILING_DIRECTORIES</emphasis>\r
2035 </term>\r
2036 <listitem>\r
2037 <simpara>\r
2038         This should be a colon-separated list of absolute paths.  If\r
2039         set, it is a list of directories that Git should not chdir up\r
2040         into while looking for a repository directory (useful for\r
2041         excluding slow-loading network directories).  It will not\r
2042         exclude the current working directory or a GIT_DIR set on the\r
2043         command line or in the environment.  Normally, Git has to read\r
2044         the entries in this list and resolve any symlink that\r
2045         might be present in order to compare them with the current\r
2046         directory.  However, if even this access is slow, you\r
2047         can add an empty entry to the list to tell Git that the\r
2048         subsequent entries are not symlinks and needn't be resolved;\r
2049         e.g.,\r
2050         <emphasis>GIT_CEILING_DIRECTORIES=/maybe/symlink::/very/slow/non/symlink</emphasis>.\r
2051 </simpara>\r
2052 </listitem>\r
2053 </varlistentry>\r
2054 <varlistentry>\r
2055 <term>\r
2056 <emphasis>GIT_DISCOVERY_ACROSS_FILESYSTEM</emphasis>\r
2057 </term>\r
2058 <listitem>\r
2059 <simpara>\r
2060         When run in a directory that does not have ".git" repository\r
2061         directory, Git tries to find such a directory in the parent\r
2062         directories to find the top of the working tree, but by default it\r
2063         does not cross filesystem boundaries.  This environment variable\r
2064         can be set to true to tell Git not to stop at filesystem\r
2065         boundaries.  Like <emphasis>GIT_CEILING_DIRECTORIES</emphasis>, this will not affect\r
2066         an explicit repository directory set via <emphasis>GIT_DIR</emphasis> or on the\r
2067         command line.\r
2068 </simpara>\r
2069 </listitem>\r
2070 </varlistentry>\r
2071 <varlistentry>\r
2072 <term>\r
2073 <emphasis>GIT_COMMON_DIR</emphasis>\r
2074 </term>\r
2075 <listitem>\r
2076 <simpara>\r
2077         If this variable is set to a path, non-worktree files that are\r
2078         normally in $GIT_DIR will be taken from this path\r
2079         instead. Worktree-specific files such as HEAD or index are\r
2080         taken from $GIT_DIR. See <xref linkend="gitrepository-layout(5)" /> and\r
2081         <xref linkend="git-worktree(1)" /> for\r
2082         details. This variable has lower precedence than other path\r
2083         variables such as GIT_INDEX_FILE, GIT_OBJECT_DIRECTORY&#8230;\r
2084 </simpara>\r
2085 </listitem>\r
2086 </varlistentry>\r
2087 </variablelist>\r
2088 </section>\r
2089 <section id="git(1)__git_commits">\r
2090 <title>Git Commits</title>\r
2091 <variablelist>\r
2092 <varlistentry>\r
2093 <term>\r
2094 <emphasis>GIT_AUTHOR_NAME</emphasis>\r
2095 </term>\r
2096 <term>\r
2097 <emphasis>GIT_AUTHOR_EMAIL</emphasis>\r
2098 </term>\r
2099 <term>\r
2100 <emphasis>GIT_AUTHOR_DATE</emphasis>\r
2101 </term>\r
2102 <term>\r
2103 <emphasis>GIT_COMMITTER_NAME</emphasis>\r
2104 </term>\r
2105 <term>\r
2106 <emphasis>GIT_COMMITTER_EMAIL</emphasis>\r
2107 </term>\r
2108 <term>\r
2109 <emphasis>GIT_COMMITTER_DATE</emphasis>\r
2110 </term>\r
2111 <term>\r
2112 <emphasis>EMAIL</emphasis>\r
2113 </term>\r
2114 <listitem>\r
2115 <simpara>\r
2116         see <xref linkend="git-commit-tree(1)" />\r
2117 </simpara>\r
2118 </listitem>\r
2119 </varlistentry>\r
2120 </variablelist>\r
2121 </section>\r
2122 <section id="git(1)__git_diffs">\r
2123 <title>Git Diffs</title>\r
2124 <variablelist>\r
2125 <varlistentry>\r
2126 <term>\r
2127 <emphasis>GIT_DIFF_OPTS</emphasis>\r
2128 </term>\r
2129 <listitem>\r
2130 <simpara>\r
2131         Only valid setting is "--unified=??" or "-u??" to set the\r
2132         number of context lines shown when a unified diff is created.\r
2133         This takes precedence over any "-U" or "--unified" option\r
2134         value passed on the Git diff command line.\r
2135 </simpara>\r
2136 </listitem>\r
2137 </varlistentry>\r
2138 <varlistentry>\r
2139 <term>\r
2140 <emphasis>GIT_EXTERNAL_DIFF</emphasis>\r
2141 </term>\r
2142 <listitem>\r
2143 <simpara>\r
2144         When the environment variable <emphasis>GIT_EXTERNAL_DIFF</emphasis> is set, the\r
2145         program named by it is called, instead of the diff invocation\r
2146         described above.  For a path that is added, removed, or modified,\r
2147         <emphasis>GIT_EXTERNAL_DIFF</emphasis> is called with 7 parameters:\r
2148 </simpara>\r
2149 <literallayout class="monospaced">path old-file old-hex old-mode new-file new-hex new-mode</literallayout>\r
2150 <simpara>where:</simpara>\r
2151 </listitem>\r
2152 </varlistentry>\r
2153 <varlistentry>\r
2154 <term>\r
2155 &lt;old|new&gt;-file\r
2156 </term>\r
2157 <listitem>\r
2158 <simpara>\r
2159 are files GIT_EXTERNAL_DIFF can use to read the\r
2160                          contents of &lt;old|new&gt;,\r
2161 </simpara>\r
2162 </listitem>\r
2163 </varlistentry>\r
2164 <varlistentry>\r
2165 <term>\r
2166 &lt;old|new&gt;-hex\r
2167 </term>\r
2168 <listitem>\r
2169 <simpara>\r
2170 are the 40-hexdigit SHA-1 hashes,\r
2171 </simpara>\r
2172 </listitem>\r
2173 </varlistentry>\r
2174 <varlistentry>\r
2175 <term>\r
2176 &lt;old|new&gt;-mode\r
2177 </term>\r
2178 <listitem>\r
2179 <simpara>\r
2180 are the octal representation of the file modes.\r
2181 </simpara>\r
2182 <simpara>The file parameters can point at the user's working file\r
2183 (e.g. <emphasis>new-file</emphasis> in "git-diff-files"), <emphasis>/dev/null</emphasis> (e.g. <emphasis>old-file</emphasis>\r
2184 when a new file is added), or a temporary file (e.g. <emphasis>old-file</emphasis> in the\r
2185 index).  <emphasis>GIT_EXTERNAL_DIFF</emphasis> should not worry about unlinking the\r
2186 temporary file --- it is removed when <emphasis>GIT_EXTERNAL_DIFF</emphasis> exits.</simpara>\r
2187 <simpara>For a path that is unmerged, <emphasis>GIT_EXTERNAL_DIFF</emphasis> is called with 1\r
2188 parameter, &lt;path&gt;.</simpara>\r
2189 <simpara>For each path <emphasis>GIT_EXTERNAL_DIFF</emphasis> is called, two environment variables,\r
2190 <emphasis>GIT_DIFF_PATH_COUNTER</emphasis> and <emphasis>GIT_DIFF_PATH_TOTAL</emphasis> are set.</simpara>\r
2191 </listitem>\r
2192 </varlistentry>\r
2193 <varlistentry>\r
2194 <term>\r
2195 <emphasis>GIT_DIFF_PATH_COUNTER</emphasis>\r
2196 </term>\r
2197 <listitem>\r
2198 <simpara>\r
2199         A 1-based counter incremented by one for every path.\r
2200 </simpara>\r
2201 </listitem>\r
2202 </varlistentry>\r
2203 <varlistentry>\r
2204 <term>\r
2205 <emphasis>GIT_DIFF_PATH_TOTAL</emphasis>\r
2206 </term>\r
2207 <listitem>\r
2208 <simpara>\r
2209         The total number of paths.\r
2210 </simpara>\r
2211 </listitem>\r
2212 </varlistentry>\r
2213 </variablelist>\r
2214 </section>\r
2215 <section id="git(1)__other">\r
2216 <title>other</title>\r
2217 <variablelist>\r
2218 <varlistentry>\r
2219 <term>\r
2220 <emphasis>GIT_MERGE_VERBOSITY</emphasis>\r
2221 </term>\r
2222 <listitem>\r
2223 <simpara>\r
2224         A number controlling the amount of output shown by\r
2225         the recursive merge strategy.  Overrides merge.verbosity.\r
2226         See <xref linkend="git-merge(1)" />\r
2227 </simpara>\r
2228 </listitem>\r
2229 </varlistentry>\r
2230 <varlistentry>\r
2231 <term>\r
2232 <emphasis>GIT_PAGER</emphasis>\r
2233 </term>\r
2234 <listitem>\r
2235 <simpara>\r
2236         This environment variable overrides <emphasis>$PAGER</emphasis>. If it is set\r
2237         to an empty string or to the value "cat", Git will not launch\r
2238         a pager.  See also the <emphasis>core.pager</emphasis> option in\r
2239         <xref linkend="git-config(1)" />.\r
2240 </simpara>\r
2241 </listitem>\r
2242 </varlistentry>\r
2243 <varlistentry>\r
2244 <term>\r
2245 <emphasis>GIT_EDITOR</emphasis>\r
2246 </term>\r
2247 <listitem>\r
2248 <simpara>\r
2249         This environment variable overrides <emphasis>$EDITOR</emphasis> and <emphasis>$VISUAL</emphasis>.\r
2250         It is used by several Git commands when, on interactive mode,\r
2251         an editor is to be launched. See also <xref linkend="git-var(1)" />\r
2252         and the <emphasis>core.editor</emphasis> option in <xref linkend="git-config(1)" />.\r
2253 </simpara>\r
2254 </listitem>\r
2255 </varlistentry>\r
2256 <varlistentry>\r
2257 <term>\r
2258 <emphasis>GIT_SSH</emphasis>\r
2259 </term>\r
2260 <term>\r
2261 <emphasis>GIT_SSH_COMMAND</emphasis>\r
2262 </term>\r
2263 <listitem>\r
2264 <simpara>\r
2265         If either of these environment variables is set then <emphasis>git fetch</emphasis>\r
2266         and <emphasis>git push</emphasis> will use the specified command instead of <emphasis>ssh</emphasis>\r
2267         when they need to connect to a remote system.\r
2268         The command will be given exactly two or four arguments: the\r
2269         <emphasis>username@host</emphasis> (or just <emphasis>host</emphasis>) from the URL and the shell\r
2270         command to execute on that remote system, optionally preceded by\r
2271         <emphasis>-p</emphasis> (literally) and the <emphasis>port</emphasis> from the URL when it specifies\r
2272         something other than the default SSH port.\r
2273 </simpara>\r
2274 <simpara><emphasis>$GIT_SSH_COMMAND</emphasis> takes precedence over <emphasis>$GIT_SSH</emphasis>, and is interpreted\r
2275 by the shell, which allows additional arguments to be included.\r
2276 <emphasis>$GIT_SSH</emphasis> on the other hand must be just the path to a program\r
2277 (which can be a wrapper shell script, if additional arguments are\r
2278 needed).</simpara>\r
2279 <simpara>Usually it is easier to configure any desired options through your\r
2280 personal <emphasis>.ssh/config</emphasis> file.  Please consult your ssh documentation\r
2281 for further details.</simpara>\r
2282 </listitem>\r
2283 </varlistentry>\r
2284 <varlistentry>\r
2285 <term>\r
2286 <emphasis>GIT_ASKPASS</emphasis>\r
2287 </term>\r
2288 <listitem>\r
2289 <simpara>\r
2290         If this environment variable is set, then Git commands which need to\r
2291         acquire passwords or passphrases (e.g. for HTTP or IMAP authentication)\r
2292         will call this program with a suitable prompt as command-line argument\r
2293         and read the password from its STDOUT. See also the <emphasis>core.askPass</emphasis>\r
2294         option in <xref linkend="git-config(1)" />.\r
2295 </simpara>\r
2296 </listitem>\r
2297 </varlistentry>\r
2298 <varlistentry>\r
2299 <term>\r
2300 <emphasis>GIT_TERMINAL_PROMPT</emphasis>\r
2301 </term>\r
2302 <listitem>\r
2303 <simpara>\r
2304         If this environment variable is set to <emphasis>0</emphasis>, git will not prompt\r
2305         on the terminal (e.g., when asking for HTTP authentication).\r
2306 </simpara>\r
2307 </listitem>\r
2308 </varlistentry>\r
2309 <varlistentry>\r
2310 <term>\r
2311 <emphasis>GIT_CONFIG_NOSYSTEM</emphasis>\r
2312 </term>\r
2313 <listitem>\r
2314 <simpara>\r
2315         Whether to skip reading settings from the system-wide\r
2316         <emphasis>$(prefix)/etc/gitconfig</emphasis> file.  This environment variable can\r
2317         be used along with <emphasis>$HOME</emphasis> and <emphasis>$XDG_CONFIG_HOME</emphasis> to create a\r
2318         predictable environment for a picky script, or you can set it\r
2319         temporarily to avoid using a buggy <emphasis>/etc/gitconfig</emphasis> file while\r
2320         waiting for someone with sufficient permissions to fix it.\r
2321 </simpara>\r
2322 </listitem>\r
2323 </varlistentry>\r
2324 <varlistentry>\r
2325 <term>\r
2326 <emphasis>GIT_FLUSH</emphasis>\r
2327 </term>\r
2328 <listitem>\r
2329 <simpara>\r
2330         If this environment variable is set to "1", then commands such\r
2331         as <emphasis>git blame</emphasis> (in incremental mode), <emphasis>git rev-list</emphasis>, <emphasis>git log</emphasis>,\r
2332         <emphasis>git check-attr</emphasis> and <emphasis>git check-ignore</emphasis> will\r
2333         force a flush of the output stream after each record have been\r
2334         flushed. If this\r
2335         variable is set to "0", the output of these commands will be done\r
2336         using completely buffered I/O.   If this environment variable is\r
2337         not set, Git will choose buffered or record-oriented flushing\r
2338         based on whether stdout appears to be redirected to a file or not.\r
2339 </simpara>\r
2340 </listitem>\r
2341 </varlistentry>\r
2342 <varlistentry>\r
2343 <term>\r
2344 <emphasis>GIT_TRACE</emphasis>\r
2345 </term>\r
2346 <listitem>\r
2347 <simpara>\r
2348         Enables general trace messages, e.g. alias expansion, built-in\r
2349         command execution and external command execution.\r
2350 </simpara>\r
2351 <simpara>If this variable is set to "1", "2" or "true" (comparison\r
2352 is case insensitive), trace messages will be printed to\r
2353 stderr.</simpara>\r
2354 <simpara>If the variable is set to an integer value greater than 2\r
2355 and lower than 10 (strictly) then Git will interpret this\r
2356 value as an open file descriptor and will try to write the\r
2357 trace messages into this file descriptor.</simpara>\r
2358 <simpara>Alternatively, if the variable is set to an absolute path\r
2359 (starting with a <emphasis>/</emphasis> character), Git will interpret this\r
2360 as a file path and will try to write the trace messages\r
2361 into it.</simpara>\r
2362 <simpara>Unsetting the variable, or setting it to empty, "0" or\r
2363 "false" (case insensitive) disables trace messages.</simpara>\r
2364 </listitem>\r
2365 </varlistentry>\r
2366 <varlistentry>\r
2367 <term>\r
2368 <emphasis>GIT_TRACE_PACK_ACCESS</emphasis>\r
2369 </term>\r
2370 <listitem>\r
2371 <simpara>\r
2372         Enables trace messages for all accesses to any packs. For each\r
2373         access, the pack file name and an offset in the pack is\r
2374         recorded. This may be helpful for troubleshooting some\r
2375         pack-related performance problems.\r
2376         See <emphasis>GIT_TRACE</emphasis> for available trace output options.\r
2377 </simpara>\r
2378 </listitem>\r
2379 </varlistentry>\r
2380 <varlistentry>\r
2381 <term>\r
2382 <emphasis>GIT_TRACE_PACKET</emphasis>\r
2383 </term>\r
2384 <listitem>\r
2385 <simpara>\r
2386         Enables trace messages for all packets coming in or out of a\r
2387         given program. This can help with debugging object negotiation\r
2388         or other protocol issues. Tracing is turned off at a packet\r
2389         starting with "PACK" (but see <emphasis>GIT_TRACE_PACKFILE</emphasis> below).\r
2390         See <emphasis>GIT_TRACE</emphasis> for available trace output options.\r
2391 </simpara>\r
2392 </listitem>\r
2393 </varlistentry>\r
2394 <varlistentry>\r
2395 <term>\r
2396 <emphasis>GIT_TRACE_PACKFILE</emphasis>\r
2397 </term>\r
2398 <listitem>\r
2399 <simpara>\r
2400         Enables tracing of packfiles sent or received by a\r
2401         given program. Unlike other trace output, this trace is\r
2402         verbatim: no headers, and no quoting of binary data. You almost\r
2403         certainly want to direct into a file (e.g.,\r
2404         <emphasis>GIT_TRACE_PACKFILE=/tmp/my.pack</emphasis>) rather than displaying it on\r
2405         the terminal or mixing it with other trace output.\r
2406 </simpara>\r
2407 <simpara>Note that this is currently only implemented for the client side\r
2408 of clones and fetches.</simpara>\r
2409 </listitem>\r
2410 </varlistentry>\r
2411 <varlistentry>\r
2412 <term>\r
2413 <emphasis>GIT_TRACE_PERFORMANCE</emphasis>\r
2414 </term>\r
2415 <listitem>\r
2416 <simpara>\r
2417         Enables performance related trace messages, e.g. total execution\r
2418         time of each Git command.\r
2419         See <emphasis>GIT_TRACE</emphasis> for available trace output options.\r
2420 </simpara>\r
2421 </listitem>\r
2422 </varlistentry>\r
2423 <varlistentry>\r
2424 <term>\r
2425 <emphasis>GIT_TRACE_SETUP</emphasis>\r
2426 </term>\r
2427 <listitem>\r
2428 <simpara>\r
2429         Enables trace messages printing the .git, working tree and current\r
2430         working directory after Git has completed its setup phase.\r
2431         See <emphasis>GIT_TRACE</emphasis> for available trace output options.\r
2432 </simpara>\r
2433 </listitem>\r
2434 </varlistentry>\r
2435 <varlistentry>\r
2436 <term>\r
2437 <emphasis>GIT_TRACE_SHALLOW</emphasis>\r
2438 </term>\r
2439 <listitem>\r
2440 <simpara>\r
2441         Enables trace messages that can help debugging fetching /\r
2442         cloning of shallow repositories.\r
2443         See <emphasis>GIT_TRACE</emphasis> for available trace output options.\r
2444 </simpara>\r
2445 </listitem>\r
2446 </varlistentry>\r
2447 <varlistentry>\r
2448 <term>\r
2449 <emphasis>GIT_LITERAL_PATHSPECS</emphasis>\r
2450 </term>\r
2451 <listitem>\r
2452 <simpara>\r
2453         Setting this variable to <emphasis>1</emphasis> will cause Git to treat all\r
2454         pathspecs literally, rather than as glob patterns. For example,\r
2455         running <emphasis>GIT_LITERAL_PATHSPECS=1 git log -- '*.c'</emphasis> will search\r
2456         for commits that touch the path <emphasis>*.c</emphasis>, not any paths that the\r
2457         glob <emphasis>*.c</emphasis> matches. You might want this if you are feeding\r
2458         literal paths to Git (e.g., paths previously given to you by\r
2459         <emphasis>git ls-tree</emphasis>, <emphasis>--raw</emphasis> diff output, etc).\r
2460 </simpara>\r
2461 </listitem>\r
2462 </varlistentry>\r
2463 <varlistentry>\r
2464 <term>\r
2465 <emphasis>GIT_GLOB_PATHSPECS</emphasis>\r
2466 </term>\r
2467 <listitem>\r
2468 <simpara>\r
2469         Setting this variable to <emphasis>1</emphasis> will cause Git to treat all\r
2470         pathspecs as glob patterns (aka "glob" magic).\r
2471 </simpara>\r
2472 </listitem>\r
2473 </varlistentry>\r
2474 <varlistentry>\r
2475 <term>\r
2476 <emphasis>GIT_NOGLOB_PATHSPECS</emphasis>\r
2477 </term>\r
2478 <listitem>\r
2479 <simpara>\r
2480         Setting this variable to <emphasis>1</emphasis> will cause Git to treat all\r
2481         pathspecs as literal (aka "literal" magic).\r
2482 </simpara>\r
2483 </listitem>\r
2484 </varlistentry>\r
2485 <varlistentry>\r
2486 <term>\r
2487 <emphasis>GIT_ICASE_PATHSPECS</emphasis>\r
2488 </term>\r
2489 <listitem>\r
2490 <simpara>\r
2491         Setting this variable to <emphasis>1</emphasis> will cause Git to treat all\r
2492         pathspecs as case-insensitive.\r
2493 </simpara>\r
2494 </listitem>\r
2495 </varlistentry>\r
2496 <varlistentry>\r
2497 <term>\r
2498 <emphasis>GIT_REFLOG_ACTION</emphasis>\r
2499 </term>\r
2500 <listitem>\r
2501 <simpara>\r
2502         When a ref is updated, reflog entries are created to keep\r
2503         track of the reason why the ref was updated (which is\r
2504         typically the name of the high-level command that updated\r
2505         the ref), in addition to the old and new values of the ref.\r
2506         A scripted Porcelain command can use set_reflog_action\r
2507         helper function in <emphasis>git-sh-setup</emphasis> to set its name to this\r
2508         variable when it is invoked as the top level command by the\r
2509         end user, to be recorded in the body of the reflog.\r
2510 </simpara>\r
2511 </listitem>\r
2512 </varlistentry>\r
2513 <varlistentry>\r
2514 <term>\r
2515 <emphasis>GIT_REF_PARANOIA</emphasis>\r
2516 </term>\r
2517 <listitem>\r
2518 <simpara>\r
2519         If set to <emphasis>1</emphasis>, include broken or badly named refs when iterating\r
2520         over lists of refs. In a normal, non-corrupted repository, this\r
2521         does nothing. However, enabling it may help git to detect and\r
2522         abort some operations in the presence of broken refs. Git sets\r
2523         this variable automatically when performing destructive\r
2524         operations like <xref linkend="git-prune(1)" />. You should not need to set\r
2525         it yourself unless you want to be paranoid about making sure\r
2526         an operation has touched every ref (e.g., because you are\r
2527         cloning a repository to make a backup).\r
2528 </simpara>\r
2529 </listitem>\r
2530 </varlistentry>\r
2531 <varlistentry>\r
2532 <term>\r
2533 <emphasis>GIT_ALLOW_PROTOCOL</emphasis>\r
2534 </term>\r
2535 <listitem>\r
2536 <simpara>\r
2537         If set, provide a colon-separated list of protocols which are\r
2538         allowed to be used with fetch/push/clone. This is useful to\r
2539         restrict recursive submodule initialization from an untrusted\r
2540         repository. Any protocol not mentioned will be disallowed (i.e.,\r
2541         this is a whitelist, not a blacklist). If the variable is not\r
2542         set at all, all protocols are enabled.  The protocol names\r
2543         currently used by git are:\r
2544 </simpara>\r
2545 <itemizedlist>\r
2546 <listitem>\r
2547 <simpara>\r
2548 <emphasis>file</emphasis>: any local file-based path (including <emphasis>file://</emphasis> URLs,\r
2549             or local paths)\r
2550 </simpara>\r
2551 </listitem>\r
2552 <listitem>\r
2553 <simpara>\r
2554 <emphasis>git</emphasis>: the anonymous git protocol over a direct TCP\r
2555             connection (or proxy, if configured)\r
2556 </simpara>\r
2557 </listitem>\r
2558 <listitem>\r
2559 <simpara>\r
2560 <emphasis>ssh</emphasis>: git over ssh (including <emphasis>host:path</emphasis> syntax,\r
2561             <emphasis>ssh://</emphasis>, etc).\r
2562 </simpara>\r
2563 </listitem>\r
2564 <listitem>\r
2565 <simpara>\r
2566 <emphasis>http</emphasis>: git over http, both "smart http" and "dumb http".\r
2567             Note that this does <emphasis>not</emphasis> include <emphasis>https</emphasis>; if you want both,\r
2568             you should specify both as <emphasis>http:https</emphasis>.\r
2569 </simpara>\r
2570 </listitem>\r
2571 <listitem>\r
2572 <simpara>\r
2573 any external helpers are named by their protocol (e.g., use\r
2574             <emphasis>hg</emphasis> to allow the <emphasis>git-remote-hg</emphasis> helper)\r
2575 </simpara>\r
2576 </listitem>\r
2577 </itemizedlist>\r
2578 </listitem>\r
2579 </varlistentry>\r
2580 </variablelist>\r
2581 </section>\r
2582 </simplesect>\r
2583 <simplesect id="git(1)__discussion_anchor_id_git_1__discussion_xreflabel_discussion">\r
2584 <title>Discussion<anchor id="git(1)_Discussion" xreflabel="[Discussion]"/></title>\r
2585 <simpara>More detail on the following is available from the\r
2586 <ulink url="https://www.kernel.org/pub/software/scm/git/docs/user-manual.html#git-concepts"><citetitle>Git concepts chapter of the\r
2587 user-manual</citetitle></ulink> and <xref linkend="gitcore-tutorial(7)" />.</simpara>\r
2588 <simpara>A Git project normally consists of a working directory with a ".git"\r
2589 subdirectory at the top level.  The .git directory contains, among other\r
2590 things, a compressed object database representing the complete history\r
2591 of the project, an "index" file which links that history to the current\r
2592 contents of the working tree, and named pointers into that history such\r
2593 as tags and branch heads.</simpara>\r
2594 <simpara>The object database contains objects of three main types: blobs, which\r
2595 hold file data; trees, which point to blobs and other trees to build up\r
2596 directory hierarchies; and commits, which each reference a single tree\r
2597 and some number of parent commits.</simpara>\r
2598 <simpara>The commit, equivalent to what other systems call a "changeset" or\r
2599 "version", represents a step in the project's history, and each parent\r
2600 represents an immediately preceding step.  Commits with more than one\r
2601 parent represent merges of independent lines of development.</simpara>\r
2602 <simpara>All objects are named by the SHA-1 hash of their contents, normally\r
2603 written as a string of 40 hex digits.  Such names are globally unique.\r
2604 The entire history leading up to a commit can be vouched for by signing\r
2605 just that commit.  A fourth object type, the tag, is provided for this\r
2606 purpose.</simpara>\r
2607 <simpara>When first created, objects are stored in individual files, but for\r
2608 efficiency may later be compressed together into "pack files".</simpara>\r
2609 <simpara>Named pointers called refs mark interesting points in history.  A ref\r
2610 may contain the SHA-1 name of an object or the name of another ref.  Refs\r
2611 with names beginning <emphasis>ref/head/</emphasis> contain the SHA-1 name of the most\r
2612 recent commit (or "head") of a branch under development.  SHA-1 names of\r
2613 tags of interest are stored under <emphasis>ref/tags/</emphasis>.  A special ref named\r
2614 <emphasis>HEAD</emphasis> contains the name of the currently checked-out branch.</simpara>\r
2615 <simpara>The index file is initialized with a list of all paths and, for each\r
2616 path, a blob object and a set of attributes.  The blob object represents\r
2617 the contents of the file as of the head of the current branch.  The\r
2618 attributes (last modified time, size, etc.) are taken from the\r
2619 corresponding file in the working tree.  Subsequent changes to the\r
2620 working tree can be found by comparing these attributes.  The index may\r
2621 be updated with new content, and new commits may be created from the\r
2622 content stored in the index.</simpara>\r
2623 <simpara>The index is also capable of storing multiple entries (called "stages")\r
2624 for a given pathname.  These stages are used to hold the various\r
2625 unmerged version of a file when a merge is in progress.</simpara>\r
2626 </simplesect>\r
2627 <simplesect id="git(1)__further_documentation">\r
2628 <title>FURTHER DOCUMENTATION</title>\r
2629 <simpara>See the references in the "description" section to get started\r
2630 using Git.  The following is probably more detail than necessary\r
2631 for a first-time user.</simpara>\r
2632 <simpara>The <ulink url="https://www.kernel.org/pub/software/scm/git/docs/user-manual.html#git-concepts"><citetitle>Git concepts chapter of the\r
2633 user-manual</citetitle></ulink> and <xref linkend="gitcore-tutorial(7)" /> both provide\r
2634 introductions to the underlying Git architecture.</simpara>\r
2635 <simpara>See <xref linkend="gitworkflows(7)" /> for an overview of recommended workflows.</simpara>\r
2636 <simpara>See also the <ulink url="https://www.kernel.org/pub/software/scm/git/docs/howto-index.html"><citetitle>howto</citetitle></ulink> documents for some useful\r
2637 examples.</simpara>\r
2638 <simpara>The internals are documented in the\r
2639 <ulink url="https://www.kernel.org/pub/software/scm/git/docs/technical/api-index.html"><citetitle>Git API documentation</citetitle></ulink>.</simpara>\r
2640 <simpara>Users migrating from CVS may also want to\r
2641 read <xref linkend="gitcvs-migration(7)" />.</simpara>\r
2642 </simplesect>\r
2643 <simplesect id="git(1)__authors">\r
2644 <title>Authors</title>\r
2645 <simpara>Git was started by Linus Torvalds, and is currently maintained by Junio\r
2646 C Hamano. Numerous contributions have come from the Git mailing list\r
2647 &lt;<ulink url="mailto:git@vger.kernel.org">git@vger.kernel.org</ulink>&gt;.  <ulink url="http://www.openhub.net/p/git/contributors/summary">http://www.openhub.net/p/git/contributors/summary</ulink>\r
2648 gives you a more complete list of contributors.</simpara>\r
2649 <simpara>If you have a clone of git.git itself, the\r
2650 output of <xref linkend="git-shortlog(1)" /> and <xref linkend="git-blame(1)" /> can show you\r
2651 the authors for specific parts of the project.</simpara>\r
2652 </simplesect>\r
2653 <simplesect id="git(1)__reporting_bugs">\r
2654 <title>Reporting Bugs</title>\r
2655 <simpara>Report bugs to the Git mailing list &lt;<ulink url="mailto:git@vger.kernel.org">git@vger.kernel.org</ulink>&gt; where the\r
2656 development and maintenance is primarily done.  You do not have to be\r
2657 subscribed to the list to send a message there.</simpara>\r
2658 </simplesect>\r
2659 <simplesect id="git(1)__see_also">\r
2660 <title>SEE ALSO</title>\r
2661 <simpara><xref linkend="gittutorial(7)" />, <xref linkend="gittutorial-2(7)" />,\r
2662 <xref linkend="giteveryday(7)" />, <xref linkend="gitcvs-migration(7)" />,\r
2663 <xref linkend="gitglossary(7)" />, <xref linkend="gitcore-tutorial(7)" />,\r
2664 <xref linkend="gitcli(7)" />, <ulink url="https://www.kernel.org/pub/software/scm/git/docs/user-manual.html"><citetitle>The Git User's Manual</citetitle></ulink>,\r
2665 <xref linkend="gitworkflows(7)" /></simpara>\r
2666 </simplesect>\r
2667 <simplesect id="git(1)__git">\r
2668 <title>GIT</title>\r
2669 <simpara>Part of the <xref linkend="git(1)" /> suite</simpara>\r
2670 </simplesect>\r
2671 </sect2>\r