git-fetch.sh printed protocol fix
[git/git.git] / Documentation / git.txt
CommitLineData
7984eabe 1git(7)
2cf565c5 2======
2cf565c5
DG
3
4NAME
5----
6git - the stupid content tracker
7
8
9SYNOPSIS
10--------
8b70004b 11[verse]
6acbcb92 12'git' [--version] [--exec-path[=GIT_EXEC_PATH]] [-p|--paginate]
8b70004b 13 [--bare] [--git-dir=GIT_DIR] [--help] COMMAND [ARGS]
2cf565c5
DG
14
15DESCRIPTION
16-----------
23091e95
BF
17Git is a fast, scalable, distributed revision control system with an
18unusually rich command set that provides both high-level operations
19and full access to internals.
20
21See this link:tutorial.html[tutorial] to get started, then see
22link:everyday.html[Everyday Git] for a useful minimum set of commands, and
23"man git-commandname" for documentation of each command. CVS users may
24also want to read link:cvs-migration.html[CVS migration].
cb22bc44 25
4514ad4f
PB
26The COMMAND is either a name of a Git command (see below) or an alias
27as defined in the configuration file (see gitlink:git-repo-config[1]).
28
cb22bc44
AE
29OPTIONS
30-------
31--version::
a87cd02c 32 Prints the git suite version that the 'git' program came from.
cb22bc44
AE
33
34--help::
a87cd02c
FK
35 Prints the synopsis and a list of the most commonly used
36 commands. If a git command is named this option will bring up
37 the man-page for that command. If the option '--all' or '-a' is
38 given then all available commands are printed.
cb22bc44
AE
39
40--exec-path::
a87cd02c 41 Path to wherever your core git programs are installed.
cb22bc44
AE
42 This can also be controlled by setting the GIT_EXEC_PATH
43 environment variable. If no path is given 'git' will print
44 the current setting and then exit.
45
6acbcb92
JS
46-p|--paginate::
47 Pipe all output into 'less' (or if set, $PAGER).
48
49--git-dir=<path>::
50 Set the path to the repository. This can also be controlled by
51 setting the GIT_DIR environment variable.
52
53--bare::
54 Same as --git-dir=`pwd`.
9755afbd 55
23091e95
BF
56FURTHER DOCUMENTATION
57---------------------
9755afbd 58
23091e95
BF
59See the references above to get started using git. The following is
60probably more detail than necessary for a first-time user.
8db9307c 61
23091e95
BF
62The <<Discussion,Discussion>> section below and the
63link:core-tutorial.html[Core tutorial] both provide introductions to the
64underlying git architecture.
e6fc2346 65
23091e95
BF
66See also the link:howto-index.html[howto] documents for some useful
67examples.
9755afbd 68
23091e95
BF
69GIT COMMANDS
70------------
9755afbd 71
23091e95
BF
72We divide git into high level ("porcelain") commands and low level
73("plumbing") commands.
8b15e2fb 74
23091e95
BF
75Low-level commands (plumbing)
76-----------------------------
e6fc2346 77
23091e95
BF
78Although git includes its
79own porcelain layer, its low-level commands are sufficient to support
80development of alternative porcelains. Developers of such porcelains
81might start by reading about gitlink:git-update-index[1] and
82gitlink:git-read-tree[1].
2cf565c5 83
23091e95
BF
84We divide the low-level commands into commands that manipulate objects (in
85the repository, index, and working tree), commands that interrogate and
86compare objects, and commands that move objects and references between
87repositories.
204ee6a9 88
2cf565c5
DG
89Manipulation commands
90~~~~~~~~~~~~~~~~~~~~~
a7154e91 91gitlink:git-apply[1]::
f85a4191
JH
92 Reads a "diff -up1" or git generated patch file and
93 applies it to the working tree.
94
a7154e91 95gitlink:git-checkout-index[1]::
2fa090b6 96 Copy files from the index to the working tree.
2cf565c5 97
a7154e91 98gitlink:git-commit-tree[1]::
2fa090b6 99 Creates a new commit object.
2cf565c5 100
a7154e91 101gitlink:git-hash-object[1]::
f85a4191
JH
102 Computes the object ID from a file.
103
a52e4ef8 104gitlink:git-index-pack[1]::
2fa090b6 105 Build pack idx file for an existing packed archive.
9cf6d335 106
a7154e91 107gitlink:git-init-db[1]::
2fa090b6
JH
108 Creates an empty git object database, or reinitialize an
109 existing one.
2cf565c5 110
a7154e91 111gitlink:git-merge-index[1]::
2fa090b6 112 Runs a merge for files needing merging.
2cf565c5 113
a7154e91 114gitlink:git-mktag[1]::
2fa090b6 115 Creates a tag object.
2cf565c5 116
c16e30c0
JH
117gitlink:git-mktree[1]::
118 Build a tree-object from ls-tree formatted text.
119
a7154e91 120gitlink:git-pack-objects[1]::
f85a4191
JH
121 Creates a packed archive of objects.
122
a7154e91 123gitlink:git-prune-packed[1]::
f85a4191
JH
124 Remove extra objects that are already in pack files.
125
a7154e91 126gitlink:git-read-tree[1]::
2fa090b6 127 Reads tree information into the index.
2cf565c5 128
ee72aeaf
JS
129gitlink:git-repo-config[1]::
130 Get and set options in .git/config.
131
a7154e91 132gitlink:git-unpack-objects[1]::
f85a4191
JH
133 Unpacks objects out of a packed archive.
134
a7154e91 135gitlink:git-update-index[1]::
2fa090b6 136 Registers files in the working tree to the index.
2cf565c5 137
a7154e91 138gitlink:git-write-tree[1]::
2fa090b6 139 Creates a tree from the index.
2cf565c5 140
e31bb3bb 141
2cf565c5
DG
142Interrogation commands
143~~~~~~~~~~~~~~~~~~~~~~
f85a4191 144
a7154e91 145gitlink:git-cat-file[1]::
2fa090b6 146 Provide content or type/size information for repository objects.
2cf565c5 147
c06818e2
JH
148gitlink:git-describe[1]::
149 Show the most recent tag that is reachable from a commit.
150
a7154e91 151gitlink:git-diff-index[1]::
2fa090b6 152 Compares content and mode of blobs between the index and repository.
2cf565c5 153
a7154e91 154gitlink:git-diff-files[1]::
2fa090b6 155 Compares files in the working tree and the index.
2cf565c5 156
a7154e91 157gitlink:git-diff-stages[1]::
2fa090b6 158 Compares two "merge stages" in the index.
83db04ff 159
a7154e91 160gitlink:git-diff-tree[1]::
2fa090b6 161 Compares the content and mode of blobs found via two tree objects.
f85a4191 162
a7154e91 163gitlink:git-fsck-objects[1]::
2fa090b6 164 Verifies the connectivity and validity of the objects in the database.
2cf565c5 165
a7154e91 166gitlink:git-ls-files[1]::
2fa090b6 167 Information about files in the index and the working tree.
2cf565c5 168
a7154e91 169gitlink:git-ls-tree[1]::
2fa090b6 170 Displays a tree object in human readable form.
2cf565c5 171
a7154e91 172gitlink:git-merge-base[1]::
2fa090b6 173 Finds as good common ancestors as possible for a merge.
2cf565c5 174
a60d2d8f 175gitlink:git-name-rev[1]::
2fa090b6 176 Find symbolic names for given revs.
a60d2d8f 177
76cead39
JH
178gitlink:git-pack-redundant[1]::
179 Find redundant pack files.
180
a7154e91 181gitlink:git-rev-list[1]::
2fa090b6 182 Lists commit objects in reverse chronological order.
2cf565c5 183
a7154e91 184gitlink:git-show-index[1]::
f85a4191
JH
185 Displays contents of a pack idx file.
186
a7154e91 187gitlink:git-tar-tree[1]::
2fa090b6 188 Creates a tar archive of the files in the named tree object.
2cf565c5 189
a7154e91 190gitlink:git-unpack-file[1]::
2fa090b6 191 Creates a temporary file with a blob's contents.
2cf565c5 192
a7154e91 193gitlink:git-var[1]::
2fa090b6 194 Displays a git logical variable.
aed022ab 195
a7154e91 196gitlink:git-verify-pack[1]::
2fa090b6 197 Validates packed git archive files.
f9253394 198
2fa090b6
JH
199In general, the interrogate commands do not touch the files in
200the working tree.
2cf565c5
DG
201
202
0c04094b
JH
203Synching repositories
204~~~~~~~~~~~~~~~~~~~~~
205
a7154e91 206gitlink:git-fetch-pack[1]::
2fa090b6
JH
207 Updates from a remote repository (engine for ssh and
208 local transport).
f85a4191 209
a7154e91 210gitlink:git-http-fetch[1]::
2fa090b6
JH
211 Downloads a remote git repository via HTTP by walking
212 commit chain.
204ee6a9 213
a7154e91 214gitlink:git-local-fetch[1]::
2fa090b6
JH
215 Duplicates another git repository on a local system by
216 walking commit chain.
204ee6a9 217
a7154e91 218gitlink:git-peek-remote[1]::
2fa090b6
JH
219 Lists references on a remote repository using
220 upload-pack protocol (engine for ssh and local
221 transport).
2f2de9b4 222
a7154e91 223gitlink:git-receive-pack[1]::
2f2de9b4
JH
224 Invoked by 'git-send-pack' to receive what is pushed to it.
225
a7154e91 226gitlink:git-send-pack[1]::
f85a4191 227 Pushes to a remote repository, intelligently.
2f2de9b4 228
76cead39
JH
229gitlink:git-http-push[1]::
230 Push missing objects using HTTP/DAV.
231
d43367af
PB
232gitlink:git-shell[1]::
233 Restricted shell for GIT-only SSH access.
234
a7154e91 235gitlink:git-ssh-fetch[1]::
2fa090b6
JH
236 Pulls from a remote repository over ssh connection by
237 walking commit chain.
508e67ab 238
a7154e91 239gitlink:git-ssh-upload[1]::
2fa090b6 240 Helper "server-side" program used by git-ssh-fetch.
2f2de9b4 241
a7154e91 242gitlink:git-update-server-info[1]::
61e3ef36
JH
243 Updates auxiliary information on a dumb server to help
244 clients discover references and packs on it.
245
60306495
FBH
246gitlink:git-upload-archive[1]::
247 Invoked by 'git-archive' to send a generated archive.
248
a7154e91 249gitlink:git-upload-pack[1]::
efc7fa53 250 Invoked by 'git-fetch-pack' to push
f85a4191
JH
251 what are asked for.
252
2f2de9b4 253
23091e95
BF
254High-level commands (porcelain)
255-------------------------------
256
257We separate the porcelain commands into the main commands and some
258ancillary user utilities.
259
260Main porcelain commands
261~~~~~~~~~~~~~~~~~~~~~~~
905197de 262
a7154e91 263gitlink:git-add[1]::
2fa090b6 264 Add paths to the index.
905197de 265
8548ea8d
PB
266gitlink:git-am[1]::
267 Apply patches from a mailbox, but cooler.
268
a7154e91 269gitlink:git-applymbox[1]::
2fa090b6 270 Apply patches from a mailbox, original version by Linus.
f85a4191 271
e8daf78a
FBH
272gitlink:git-archive[1]::
273 Creates an archive of files from a named tree.
274
a7154e91 275gitlink:git-bisect[1]::
2fa090b6 276 Find the change that introduced a bug by binary search.
f85a4191 277
a7154e91 278gitlink:git-branch[1]::
905197de
JH
279 Create and Show branches.
280
a7154e91 281gitlink:git-checkout[1]::
452ce291
JH
282 Checkout and switch to a branch.
283
a7154e91 284gitlink:git-cherry-pick[1]::
f85a4191 285 Cherry-pick the effect of an existing commit.
3f971fc4 286
c16e30c0
JH
287gitlink:git-clean[1]::
288 Remove untracked files from the working tree.
289
a7154e91 290gitlink:git-clone[1]::
f85a4191 291 Clones a repository into a new directory.
3f971fc4 292
a7154e91 293gitlink:git-commit[1]::
f85a4191 294 Record changes to the repository.
3f971fc4 295
a7154e91 296gitlink:git-diff[1]::
2aba319a 297 Show changes between commits, commit and working tree, etc.
35ef3a4c 298
a7154e91 299gitlink:git-fetch[1]::
62033318
JH
300 Download from a remote repository via various protocols.
301
a7154e91 302gitlink:git-format-patch[1]::
2aba319a 303 Prepare patches for e-mail submission.
35ef3a4c 304
a7154e91 305gitlink:git-grep[1]::
2fa090b6 306 Print lines matching a pattern.
2aba319a 307
ef118622
JF
308gitlink:gitk[1]::
309 The git repository browser.
310
a7154e91 311gitlink:git-log[1]::
f85a4191 312 Shows commit logs.
62033318 313
a7154e91 314gitlink:git-ls-remote[1]::
f85a4191 315 Shows references in a remote or local repository.
ab9b3138 316
a7154e91 317gitlink:git-merge[1]::
0f69be53
JH
318 Grand unified merge driver.
319
8548ea8d
PB
320gitlink:git-mv[1]::
321 Move or rename a file, a directory, or a symlink.
322
a7154e91 323gitlink:git-pull[1]::
f85a4191
JH
324 Fetch from and merge with a remote repository.
325
a7154e91 326gitlink:git-push[1]::
ab9b3138
JH
327 Update remote refs along with associated objects.
328
a7154e91 329gitlink:git-rebase[1]::
2fa090b6 330 Rebase local commits to the updated upstream head.
62033318 331
a7154e91 332gitlink:git-repack[1]::
e31bb3bb
JH
333 Pack unpacked objects in a repository.
334
8389b52b
JH
335gitlink:git-rerere[1]::
336 Reuse recorded resolution of conflicted merges.
337
a7154e91 338gitlink:git-reset[1]::
452ce291
JH
339 Reset current HEAD to the specified state.
340
a7154e91 341gitlink:git-resolve[1]::
f85a4191 342 Merge two commits.
83db04ff 343
a7154e91 344gitlink:git-revert[1]::
f85a4191
JH
345 Revert an existing commit.
346
c16e30c0
JH
347gitlink:git-rm[1]::
348 Remove files from the working tree and from the index.
349
a7154e91 350gitlink:git-shortlog[1]::
f85a4191
JH
351 Summarizes 'git log' output.
352
55258b5c
JL
353gitlink:git-show[1]::
354 Show one commit log and its diff.
355
a7154e91 356gitlink:git-show-branch[1]::
f85a4191
JH
357 Show branches and their commits.
358
a7154e91 359gitlink:git-status[1]::
f85a4191 360 Shows the working tree status.
83db04ff 361
a7154e91 362gitlink:git-verify-tag[1]::
905197de
JH
363 Check the GPG signature of tag.
364
a7154e91 365gitlink:git-whatchanged[1]::
f85a4191
JH
366 Shows commit logs and differences they introduce.
367
e31bb3bb 368
90933efb 369Ancillary Commands
23091e95 370~~~~~~~~~~~~~~~~~~
2f2de9b4
JH
371Manipulators:
372
a7154e91 373gitlink:git-applypatch[1]::
f85a4191 374 Apply one patch extracted from an e-mail.
905197de 375
a7154e91 376gitlink:git-archimport[1]::
5077fa9c
JH
377 Import an arch repository into git.
378
a7154e91 379gitlink:git-convert-objects[1]::
2fa090b6 380 Converts old-style git repository.
2f2de9b4 381
a7154e91 382gitlink:git-cvsimport[1]::
f85a4191
JH
383 Salvage your data out of another SCM people love to hate.
384
76cead39
JH
385gitlink:git-cvsexportcommit[1]::
386 Export a single commit to a CVS checkout.
387
c16e30c0
JH
388gitlink:git-cvsserver[1]::
389 A CVS server emulator for git.
390
0086e2c8 391gitlink:git-lost-found[1]::
04e7ca1a
JH
392 Recover lost refs that luckily have not yet been pruned.
393
a7154e91 394gitlink:git-merge-one-file[1]::
2fa090b6 395 The standard helper program to use with `git-merge-index`.
204ee6a9 396
a7154e91 397gitlink:git-prune[1]::
2fa090b6 398 Prunes all unreachable objects from the object database.
204ee6a9 399
34925d35
JH
400gitlink:git-quiltimport[1]::
401 Applies a quilt patchset onto the current branch.
402
a7154e91 403gitlink:git-relink[1]::
f85a4191
JH
404 Hardlink common objects in local repositories.
405
f5fffbd3
JH
406gitlink:git-svn[1]::
407 Bidirectional operation between a single Subversion branch and git.
408
8548ea8d
PB
409gitlink:git-svnimport[1]::
410 Import a SVN repository into git.
411
a7154e91 412gitlink:git-sh-setup[1]::
f85a4191
JH
413 Common git shell script setup code.
414
a60d2d8f 415gitlink:git-symbolic-ref[1]::
2fa090b6 416 Read and modify symbolic refs.
a60d2d8f 417
a7154e91 418gitlink:git-tag[1]::
2fa090b6 419 An example script to create a tag object signed with GPG.
204ee6a9 420
8548ea8d
PB
421gitlink:git-update-ref[1]::
422 Update the object name stored in a ref safely.
423
204ee6a9 424
90933efb 425Interrogators:
204ee6a9 426
8f2b72a9
JF
427gitlink:git-annotate[1]::
428 Annotate file lines with commit info.
429
430gitlink:git-blame[1]::
431 Blame file lines on commits.
432
8548ea8d
PB
433gitlink:git-check-ref-format[1]::
434 Make sure ref name is well formed.
435
a7154e91 436gitlink:git-cherry[1]::
f85a4191 437 Find commits not merged upstream.
905197de 438
a7154e91 439gitlink:git-count-objects[1]::
905197de
JH
440 Count unpacked number of objects and their disk consumption.
441
a7154e91 442gitlink:git-daemon[1]::
72e9340c 443 A really simple server for git repositories.
5077fa9c 444
c16e30c0
JH
445gitlink:git-fmt-merge-msg[1]::
446 Produce a merge commit message.
447
a7154e91 448gitlink:git-get-tar-commit-id[1]::
5077fa9c
JH
449 Extract commit ID from an archive created using git-tar-tree.
450
c16e30c0
JH
451gitlink:git-imap-send[1]::
452 Dump a mailbox from stdin into an imap folder.
453
f5fffbd3
JH
454gitlink:git-instaweb[1]::
455 Instantly browse your working repository in gitweb.
456
a7154e91 457gitlink:git-mailinfo[1]::
2fa090b6
JH
458 Extracts patch and authorship information from a single
459 e-mail message, optionally transliterating the commit
460 message into utf-8.
f85a4191 461
a7154e91 462gitlink:git-mailsplit[1]::
2fa090b6
JH
463 A stupid program to split UNIX mbox format mailbox into
464 individual pieces of e-mail.
f85a4191 465
c16e30c0
JH
466gitlink:git-merge-tree[1]::
467 Show three-way merge without touching index.
468
a7154e91 469gitlink:git-patch-id[1]::
f85a4191 470 Compute unique ID for a patch.
204ee6a9 471
a7154e91 472gitlink:git-parse-remote[1]::
2fa090b6 473 Routines to help parsing `$GIT_DIR/remotes/` files.
5077fa9c 474
a7154e91 475gitlink:git-request-pull[1]::
215a7ad1 476 git-request-pull.
5077fa9c 477
a7154e91 478gitlink:git-rev-parse[1]::
5077fa9c
JH
479 Pick out and massage parameters.
480
a7154e91 481gitlink:git-send-email[1]::
83db04ff 482 Send patch e-mails out of "format-patch --mbox" output.
204ee6a9 483
c1fe2fe4 484gitlink:git-symbolic-ref[1]::
8548ea8d
PB
485 Read and modify symbolic refs.
486
a7154e91 487gitlink:git-stripspace[1]::
35ef3a4c 488 Filter out empty lines.
7fc9d69f 489
7fc9d69f 490
5773c9f2
JH
491Configuration Mechanism
492-----------------------
493
2fa090b6 494Starting from 0.99.9 (actually mid 0.99.8.GIT), `.git/config` file
5773c9f2 495is used to hold per-repository configuration options. It is a
addf88e4 496simple text file modeled after `.ini` format familiar to some
5773c9f2
JH
497people. Here is an example:
498
499------------
500#
2fa090b6 501# A '#' or ';' character indicates a comment.
5773c9f2
JH
502#
503
504; core variables
505[core]
506 ; Don't trust file modes
507 filemode = false
508
509; user identity
510[user]
511 name = "Junio C Hamano"
512 email = "junkio@twinsun.com"
513
514------------
515
516Various commands read from the configuration file and adjust
517their operation accordingly.
518
519
6c84e2e0 520Identifier Terminology
2cf565c5
DG
521----------------------
522<object>::
2fa090b6 523 Indicates the object name for any type of object.
2cf565c5
DG
524
525<blob>::
2fa090b6 526 Indicates a blob object name.
2cf565c5
DG
527
528<tree>::
2fa090b6 529 Indicates a tree object name.
2cf565c5
DG
530
531<commit>::
2fa090b6 532 Indicates a commit object name.
2cf565c5
DG
533
534<tree-ish>::
2fa090b6 535 Indicates a tree, commit or tag object name. A
6c84e2e0
DG
536 command that takes a <tree-ish> argument ultimately wants to
537 operate on a <tree> object but automatically dereferences
538 <commit> and <tag> objects that point at a <tree>.
2cf565c5
DG
539
540<type>::
541 Indicates that an object type is required.
2fa090b6 542 Currently one of: `blob`, `tree`, `commit`, or `tag`.
2cf565c5
DG
543
544<file>::
2fa090b6
JH
545 Indicates a filename - almost always relative to the
546 root of the tree structure `GIT_INDEX_FILE` describes.
2cf565c5 547
c1bdacf9
DG
548Symbolic Identifiers
549--------------------
90933efb 550Any git command accepting any <object> can also use the following
6c84e2e0 551symbolic notation:
c1bdacf9
DG
552
553HEAD::
2fa090b6
JH
554 indicates the head of the current branch (i.e. the
555 contents of `$GIT_DIR/HEAD`).
556
c1bdacf9 557<tag>::
2fa090b6
JH
558 a valid tag 'name'
559 (i.e. the contents of `$GIT_DIR/refs/tags/<tag>`).
560
c1bdacf9 561<head>::
2fa090b6
JH
562 a valid head 'name'
563 (i.e. the contents of `$GIT_DIR/refs/heads/<head>`).
564
c1bdacf9
DG
565
566File/Directory Structure
567------------------------
c1bdacf9 568
a1d4aa74 569Please see link:repository-layout.html[repository layout] document.
c1bdacf9 570
6250ad1e
JL
571Read link:hooks.html[hooks] for more details about each hook.
572
c1bdacf9 573Higher level SCMs may provide and manage additional information in the
2fa090b6 574`$GIT_DIR`.
c1bdacf9 575
a1d4aa74 576
2cf565c5
DG
577Terminology
578-----------
1bff6490 579Please see link:glossary.html[glossary] document.
2cf565c5
DG
580
581
582Environment Variables
583---------------------
584Various git commands use the following environment variables:
585
c1bdacf9
DG
586The git Repository
587~~~~~~~~~~~~~~~~~~
588These environment variables apply to 'all' core git commands. Nb: it
589is worth noting that they may be used/overridden by SCMS sitting above
2fa090b6 590git so take care if using Cogito etc.
c1bdacf9
DG
591
592'GIT_INDEX_FILE'::
593 This environment allows the specification of an alternate
5f3aa197
LS
594 index file. If not specified, the default of `$GIT_DIR/index`
595 is used.
c1bdacf9
DG
596
597'GIT_OBJECT_DIRECTORY'::
598 If the object storage directory is specified via this
599 environment variable then the sha1 directories are created
600 underneath - otherwise the default `$GIT_DIR/objects`
601 directory is used.
602
603'GIT_ALTERNATE_OBJECT_DIRECTORIES'::
604 Due to the immutable nature of git objects, old objects can be
605 archived into shared, read-only directories. This variable
90933efb 606 specifies a ":" separated list of git object directories which
c1bdacf9
DG
607 can be used to search for git objects. New objects will not be
608 written to these directories.
609
610'GIT_DIR'::
2fa090b6
JH
611 If the 'GIT_DIR' environment variable is set then it
612 specifies a path to use instead of the default `.git`
613 for the base of the repository.
c1bdacf9
DG
614
615git Commits
616~~~~~~~~~~~
617'GIT_AUTHOR_NAME'::
618'GIT_AUTHOR_EMAIL'::
619'GIT_AUTHOR_DATE'::
620'GIT_COMMITTER_NAME'::
621'GIT_COMMITTER_EMAIL'::
a7154e91 622 see gitlink:git-commit-tree[1]
c1bdacf9
DG
623
624git Diffs
625~~~~~~~~~
d81ed1b5
JH
626'GIT_DIFF_OPTS'::
627'GIT_EXTERNAL_DIFF'::
c1bdacf9 628 see the "generating patches" section in :
a7154e91
SV
629 gitlink:git-diff-index[1];
630 gitlink:git-diff-files[1];
631 gitlink:git-diff-tree[1]
2cf565c5 632
575ba9d6
ML
633other
634~~~~~
c27d205a
ML
635'GIT_PAGER'::
636 This environment variable overrides `$PAGER`.
637
575ba9d6 638'GIT_TRACE'::
2886bdb1
CC
639 If this variable is set to "1", "2" or "true" (comparison
640 is case insensitive), git will print `trace:` messages on
575ba9d6
ML
641 stderr telling about alias expansion, built-in command
642 execution and external command execution.
2886bdb1
CC
643 If this variable is set to an integer value greater than 1
644 and lower than 10 (strictly) then git will interpret this
645 value as an open file descriptor and will try to write the
646 trace messages into this file descriptor.
647 Alternatively, if this variable is set to an absolute path
648 (starting with a '/' character), git will interpret this
649 as a file path and will try to write the trace messages
650 into it.
575ba9d6 651
8db9307c
JH
652Discussion[[Discussion]]
653------------------------
941c9449 654include::README[]
6c84e2e0 655
cb22bc44
AE
656Authors
657-------
9755afbd
JH
658* git's founding father is Linus Torvalds <torvalds@osdl.org>.
659* The current git nurse is Junio C Hamano <junkio@cox.net>.
660* The git potty was written by Andres Ericsson <ae@op5.se>.
661* General upbringing is handled by the git-list <git@vger.kernel.org>.
2cf565c5
DG
662
663Documentation
664--------------
9755afbd
JH
665The documentation for git suite was started by David Greaves
666<david@dgreaves.com>, and later enhanced greatly by the
667contributors on the git-list <git@vger.kernel.org>.
2cf565c5
DG
668
669GIT
670---
a7154e91 671Part of the gitlink:git[7] suite
2cf565c5 672