<object>...
The names of objects to show (defaults to HEAD). For a more
complete list of ways to spell object names, see "SPECIFYING
REVISIONS" section in gitrevisions(7).
--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 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>
The commit objects record the 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.
--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 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).
--notes[=<ref>]
Show the notes (see git-notes(1)) that annotate the commit,
when showing the commit log message. This is the default for
git log
, git show
and git whatchanged
commands when 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 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 a 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[=<ref>], --[no-]standard-notes
These options are deprecated. Use the above
--notes/--no-notes options instead.
--show-signature
Check the validity of a signed commit object by passing the
signature to gpg --verify
and show the output.