Merge branch 'jk/alternate-ref-optim' into maint
[git] / Documentation / pretty-options.txt
1 --pretty[=<format>]::
2 --format=<format>::
3
4         Pretty-print the contents of the commit logs in a given format,
5         where '<format>' can be one of 'oneline', 'short', 'medium',
6         'full', 'fuller', 'email', 'raw', 'format:<string>'
7         and 'tformat:<string>'.  When '<format>' is none of the above,
8         and has '%placeholder' in it, it acts as if
9         '--pretty=tformat:<format>' were given.
10 +
11 See the "PRETTY FORMATS" section for some additional details for each
12 format.  When '=<format>' part is omitted, it defaults to 'medium'.
13 +
14 Note: you can specify the default pretty format in the repository
15 configuration (see linkgit:git-config[1]).
16
17 --abbrev-commit::
18         Instead of showing the full 40-byte hexadecimal commit object
19         name, show only a partial prefix.  Non default number of
20         digits can be specified with "--abbrev=<n>" (which also modifies
21         diff output, if it is displayed).
22 +
23 This should make "--pretty=oneline" a whole lot more readable for
24 people using 80-column terminals.
25
26 --no-abbrev-commit::
27         Show the full 40-byte hexadecimal commit object name. This negates
28         `--abbrev-commit` and those options which imply it such as
29         "--oneline". It also overrides the `log.abbrevCommit` variable.
30
31 --oneline::
32         This is a shorthand for "--pretty=oneline --abbrev-commit"
33         used together.
34
35 --encoding=<encoding>::
36         The commit objects record the encoding used for the log message
37         in their encoding header; this option can be used to tell the
38         command to re-code the commit log message in the encoding
39         preferred by the user.  For non plumbing commands this
40         defaults to UTF-8. Note that if an object claims to be encoded
41         in `X` and we are outputting in `X`, we will output the object
42         verbatim; this means that invalid sequences in the original
43         commit may be copied to the output.
44
45 --expand-tabs=<n>::
46 --expand-tabs::
47 --no-expand-tabs::
48         Perform a tab expansion (replace each tab with enough spaces
49         to fill to the next display column that is multiple of '<n>')
50         in the log message before showing it in the output.
51         `--expand-tabs` is a short-hand for `--expand-tabs=8`, and
52         `--no-expand-tabs` is a short-hand for `--expand-tabs=0`,
53         which disables tab expansion.
54 +
55 By default, tabs are expanded in pretty formats that indent the log
56 message by 4 spaces (i.e.  'medium', which is the default, 'full',
57 and 'fuller').
58
59 ifndef::git-rev-list[]
60 --notes[=<treeish>]::
61         Show the notes (see linkgit:git-notes[1]) that annotate the
62         commit, when showing the commit log message.  This is the default
63         for `git log`, `git show` and `git whatchanged` commands when
64         there is no `--pretty`, `--format`, or `--oneline` option given
65         on the command line.
66 +
67 By default, the notes shown are from the notes refs listed in the
68 `core.notesRef` and `notes.displayRef` variables (or corresponding
69 environment overrides). See linkgit:git-config[1] for more details.
70 +
71 With an optional '<treeish>' argument, use the treeish to find the notes
72 to display.  The treeish can specify the full refname when it begins
73 with `refs/notes/`; when it begins with `notes/`, `refs/` and otherwise
74 `refs/notes/` is prefixed to form a full name of the ref.
75 +
76 Multiple --notes options can be combined to control which notes are
77 being displayed. Examples: "--notes=foo" will show only notes from
78 "refs/notes/foo"; "--notes=foo --notes" will show both notes from
79 "refs/notes/foo" and from the default notes ref(s).
80
81 --no-notes::
82         Do not show notes. This negates the above `--notes` option, by
83         resetting the list of notes refs from which notes are shown.
84         Options are parsed in the order given on the command line, so e.g.
85         "--notes --notes=foo --no-notes --notes=bar" will only show notes
86         from "refs/notes/bar".
87
88 --show-notes[=<treeish>]::
89 --[no-]standard-notes::
90         These options are deprecated. Use the above --notes/--no-notes
91         options instead.
92 endif::git-rev-list[]
93
94 --show-signature::
95         Check the validity of a signed commit object by passing the signature
96         to `gpg --verify` and show the output.