shortlog: Document and test --format option
[gitweb.git] / Documentation / diff-options.txt
index 8f793825626bedb05b12e58e0f380eec42916213..a1191d647bfb4685701e47de794bf14964de0088 100644 (file)
@@ -85,10 +85,23 @@ ifndef::git-format-patch[]
 endif::git-format-patch[]
 
 ifndef::git-format-patch[]
+
 -z::
-       NUL-line termination on output.  This affects the `--raw`
-       output field terminator.  Also output from commands such
-       as `git-log` will be delimited with NUL between commits.
+ifdef::git-log[]
+       Separate the commits with NULs instead of with new newlines.
++
+Also, when `--raw` or `--numstat` has been given, do not munge
+pathnames and use NULs as output field terminators.
+endif::git-log[]
+ifndef::git-log[]
+       When `--raw`, `--numstat`, `--name-only` or `--name-status` has been
+       given, do not munge pathnames and use NULs as output field terminators.
+endif::git-log[]
++
+Without this option, each pathname output will have TAB, LF, double quotes,
+and backslash characters replaced with `\t`, `\n`, `\"`, and `\\`,
+respectively, and the pathname will be enclosed in double quotes if
+any of those replacements occurred.
 
 --name-only::
        Show only names of changed files.
@@ -97,6 +110,13 @@ ifndef::git-format-patch[]
        Show only names and status of changed files. See the description
        of the `--diff-filter` option on what the status letters mean.
 
+--submodule[=<format>]::
+       Chose the output format for submodule differences. <format> can be one of
+       'short' and 'log'. 'short' just shows pairs of commit names, this format
+       is used when this option is not given. 'log' is the default value for this
+       option and lists the commits in that commit range like the 'summary'
+       option of linkgit:git-submodule[1] does.
+
 --color::
        Show colored diff.