Code

merge overwrites unstaged changes in renamed file
[git.git] / Documentation / diff-options.txt
index 659de6f12384239f58dc688797db8dbb10420143..378f19f0e21d57378cd1913445552456e09b4e51 100644 (file)
@@ -45,14 +45,33 @@ ifndef::git-format-patch[]
        Synonym for `-p --raw`.
 endif::git-format-patch[]
 
        Synonym for `-p --raw`.
 endif::git-format-patch[]
 
+--minimal::
+       Spend extra time to make sure the smallest possible
+       diff is produced.
+
 --patience::
        Generate a diff using the "patience diff" algorithm.
 
 --patience::
        Generate a diff using the "patience diff" algorithm.
 
---stat[=<width>[,<name-width>]]::
-       Generate a diffstat.  You can override the default
-       output width for 80-column terminal by `--stat=<width>`.
-       The width of the filename part can be controlled by
-       giving another width to it separated by a comma.
+--histogram::
+       Generate a diff using the "histogram diff" algorithm.
+
+--stat[=<width>[,<name-width>[,<count>]]]::
+       Generate a diffstat. By default, as much space as necessary
+       will be used for the filename part, and the rest for the graph
+       part. Maximum width defaults to terminal width, or 80 columns
+       if not connected to a terminal, and can be overriden by
+       `<width>`. The width of the filename part can be limited by
+       giving another width `<name-width>` after a comma. The width
+       of the graph part can be limited by using
+       `--stat-graph-width=<width>` (affects all commands generating
+       a stat graph) or by setting `diff.statGraphWidth=<width>`
+       (does not affect `git format-patch`).
+       By giving a third parameter `<count>`, you can limit the
+       output to the first `<count>` lines, followed by `...` if
+       there are more.
++
+These parameters can also be set individually with `--stat-width=<width>`,
+`--stat-name-width=<name-width>` and `--stat-count=<count>`.
 
 --numstat::
        Similar to `\--stat`, but shows number of added and
 
 --numstat::
        Similar to `\--stat`, but shows number of added and
@@ -146,11 +165,12 @@ any of those replacements occurred.
        of the `--diff-filter` option on what the status letters mean.
 
 --submodule[=<format>]::
        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.
+       Specify how differences in submodules are shown.  When `--submodule`
+       or `--submodule=log` is given, the 'log' format is used.  This format lists
+       the commits in the range like linkgit:git-submodule[1] `summary` does.
+       Omitting the `--submodule` option or specifying `--submodule=short`,
+       uses the 'short' format. This format just shows the names of the commits
+       at the beginning and end of the range.
 
 --color[=<when>]::
        Show colored diff.
 
 --color[=<when>]::
        Show colored diff.
@@ -398,7 +418,12 @@ endif::git-format-patch[]
        Show the context between diff hunks, up to the specified number
        of lines, thereby fusing hunks that are close to each other.
 
        Show the context between diff hunks, up to the specified number
        of lines, thereby fusing hunks that are close to each other.
 
+-W::
+--function-context::
+       Show whole surrounding functions of changes.
+
 ifndef::git-format-patch[]
 ifndef::git-format-patch[]
+ifndef::git-log[]
 --exit-code::
        Make the program exit with codes similar to diff(1).
        That is, it exits with 1 if there were differences and
 --exit-code::
        Make the program exit with codes similar to diff(1).
        That is, it exits with 1 if there were differences and
@@ -406,6 +431,7 @@ ifndef::git-format-patch[]
 
 --quiet::
        Disable all output of the program. Implies `--exit-code`.
 
 --quiet::
        Disable all output of the program. Implies `--exit-code`.
+endif::git-log[]
 endif::git-format-patch[]
 
 --ext-diff::
 endif::git-format-patch[]
 
 --ext-diff::