summaryrefslogtreecommitdiff
path: root/Documentation/pretty-options.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/pretty-options.adoc')
-rw-r--r--Documentation/pretty-options.adoc108
1 files changed, 108 insertions, 0 deletions
diff --git a/Documentation/pretty-options.adoc b/Documentation/pretty-options.adoc
new file mode 100644
index 0000000000..8aac51dbe7
--- /dev/null
+++ b/Documentation/pretty-options.adoc
@@ -0,0 +1,108 @@
+`--pretty[=<format>]`::
+`--format=<format>`::
+
+ Pretty-print the contents of the commit logs in a given format,
+ where '<format>' can be one of `oneline`, `short`, `medium`,
+ `full`, `fuller`, `reference`, `email`, `raw`, `format:<string>`
+ and `tformat:<string>`. When _<format>_ is none of the above,
+ and has `%<placeholder>` in it, it acts as if
+ `--pretty=tformat:<format>` were given.
++
+See the "PRETTY FORMATS" section for some additional details for each
+format. When `=<format>` part is omitted, it defaults to `medium`.
++
+NOTE: you can specify the default pretty format in the repository
+configuration (see linkgit:git-config[1]).
+
+`--abbrev-commit`::
+ Instead of showing the full 40-byte hexadecimal commit object
+ name, show a prefix that names the object uniquely.
+ `--abbrev=<n>` (which also modifies diff output, if it is displayed)
+ option can be used to specify the minimum length of the prefix.
++
+This should make `--pretty=oneline` a whole lot more readable for
+people using 80-column terminals.
+
+`--no-abbrev-commit`::
+ Show the full 40-byte hexadecimal commit object name. This negates
+ `--abbrev-commit`, either explicit or implied by other options such
+ as `--oneline`. It also overrides the `log.abbrevCommit` variable.
+
+`--oneline`::
+ This is a shorthand for `--pretty=oneline --abbrev-commit`
+ used together.
+
+`--encoding=<encoding>`::
+ Commit objects record the character encoding used for the log message
+ in their encoding header; this option can be used to tell the
+ command to re-code the commit log message in the encoding
+ preferred by the user. For non plumbing commands this
+ defaults to UTF-8. Note that if an object claims to be encoded
+ in `X` and we are outputting in `X`, we will output the object
+ verbatim; this means that invalid sequences in the original
+ commit may be copied to the output. Likewise, if iconv(3) fails
+ to convert the commit, we will quietly output the original
+ object verbatim.
+
+`--expand-tabs=<n>`::
+`--expand-tabs`::
+`--no-expand-tabs`::
+ Perform a tab expansion (replace each tab with enough spaces
+ to fill to the next display column that is a multiple of _<n>_)
+ in the log message before showing it in the output.
+ `--expand-tabs` is a short-hand for `--expand-tabs=8`, and
+ `--no-expand-tabs` is a short-hand for `--expand-tabs=0`,
+ which disables tab expansion.
++
+By default, tabs are expanded in pretty formats that indent the log
+message by 4 spaces (i.e. `medium`, which is the default, `full`,
+and `fuller`).
+
+ifndef::git-rev-list[]
+`--notes[=<ref>]`::
+ Show the notes (see linkgit:git-notes[1]) that annotate the
+ commit, when showing the commit log message. This is the default
+ifndef::with-breaking-changes[]
+ for `git log`, `git show` and `git whatchanged` commands when
+endif::with-breaking-changes[]
+ifdef::with-breaking-changes[]
+ for `git log` and `git show` commands when
+endif::with-breaking-changes[]
+ there is no `--pretty`, `--format`, or `--oneline` option given
+ on the command line.
++
+By default, the notes shown are from the notes refs listed in the
+`core.notesRef` and `notes.displayRef` variables (or corresponding
+environment overrides). See linkgit:git-config[1] for more details.
++
+With an optional '<ref>' argument, use the ref to find the notes
+to display. The ref can specify the full refname when it begins
+with `refs/notes/`; when it begins with `notes/`, `refs/` and otherwise
+`refs/notes/` is prefixed to form the full name of the ref.
++
+Multiple `--notes` options can be combined to control which notes are
+being displayed. Examples: "`--notes=foo`" will show only notes from
+`refs/notes/foo`; "`--notes=foo --notes`" will show both notes from
+"refs/notes/foo" and from the default notes ref(s).
+
+`--no-notes`::
+ Do not show notes. This negates the above `--notes` option, by
+ resetting the list of notes refs from which notes are shown.
+ Options are parsed in the order given on the command line, so e.g.
+ "`--notes --notes=foo --no-notes --notes=bar`" will only show notes
+ from `refs/notes/bar`.
+
+`--show-notes-by-default`::
+ Show the default notes unless options for displaying specific
+ notes are given.
+
+`--show-notes[=<ref>]`::
+`--standard-notes`::
+`--no-standard-notes`::
+ These options are deprecated. Use the above `--notes`/`--no-notes`
+ options instead.
+endif::git-rev-list[]
+
+`--show-signature`::
+ Check the validity of a signed commit object by passing the signature
+ to `gpg --verify` and show the output.