| diff.autorefreshindex:: | |
| When using 'git diff' to compare with work tree | |
| files, do not consider stat-only change as changed. | |
| Instead, silently run `git update-index --refresh` to | |
| update the cached stat information for paths whose | |
| contents in the work tree match the contents in the | |
| index. This option defaults to true. Note that this | |
| affects only 'git diff' Porcelain, and not lower level | |
| 'diff' commands such as 'git diff-files'. | |
| diff.dirstat:: | |
| A comma separated list of `--dirstat` parameters specifying the | |
| default behavior of the `--dirstat` option to linkgit:git-diff[1]` | |
| and friends. The defaults can be overridden on the command line | |
| (using `--dirstat=<param1,param2,...>`). The fallback defaults | |
| (when not changed by `diff.dirstat`) are `changes,noncumulative,3`. | |
| The following parameters are available: | |
| + | |
| -- | |
| `changes`;; | |
| Compute the dirstat numbers by counting the lines that have been | |
| removed from the source, or added to the destination. This ignores | |
| the amount of pure code movements within a file. In other words, | |
| rearranging lines in a file is not counted as much as other changes. | |
| This is the default behavior when no parameter is given. | |
| `lines`;; | |
| Compute the dirstat numbers by doing the regular line-based diff | |
| analysis, and summing the removed/added line counts. (For binary | |
| files, count 64-byte chunks instead, since binary files have no | |
| natural concept of lines). This is a more expensive `--dirstat` | |
| behavior than the `changes` behavior, but it does count rearranged | |
| lines within a file as much as other changes. The resulting output | |
| is consistent with what you get from the other `--*stat` options. | |
| `files`;; | |
| Compute the dirstat numbers by counting the number of files changed. | |
| Each changed file counts equally in the dirstat analysis. This is | |
| the computationally cheapest `--dirstat` behavior, since it does | |
| not have to look at the file contents at all. | |
| `cumulative`;; | |
| Count changes in a child directory for the parent directory as well. | |
| Note that when using `cumulative`, the sum of the percentages | |
| reported may exceed 100%. The default (non-cumulative) behavior can | |
| be specified with the `noncumulative` parameter. | |
| <limit>;; | |
| An integer parameter specifies a cut-off percent (3% by default). | |
| Directories contributing less than this percentage of the changes | |
| are not shown in the output. | |
| -- | |
| + | |
| Example: The following will count changed files, while ignoring | |
| directories with less than 10% of the total amount of changed files, | |
| and accumulating child directory counts in the parent directories: | |
| `files,10,cumulative`. | |
| diff.statGraphWidth:: | |
| Limit the width of the graph part in --stat output. If set, applies | |
| to all commands generating --stat output except format-patch. | |
| diff.context:: | |
| Generate diffs with <n> lines of context instead of the default | |
| of 3. This value is overridden by the -U option. | |
| diff.external:: | |
| If this config variable is set, diff generation is not | |
| performed using the internal diff machinery, but using the | |
| given command. Can be overridden with the `GIT_EXTERNAL_DIFF' | |
| environment variable. The command is called with parameters | |
| as described under "git Diffs" in linkgit:git[1]. Note: if | |
| you want to use an external diff program only on a subset of | |
| your files, you might want to use linkgit:gitattributes[5] instead. | |
| diff.ignoreSubmodules:: | |
| Sets the default value of --ignore-submodules. Note that this | |
| affects only 'git diff' Porcelain, and not lower level 'diff' | |
| commands such as 'git diff-files'. 'git checkout' also honors | |
| this setting when reporting uncommitted changes. | |
| diff.mnemonicprefix:: | |
| If set, 'git diff' uses a prefix pair that is different from the | |
| standard "a/" and "b/" depending on what is being compared. When | |
| this configuration is in effect, reverse diff output also swaps | |
| the order of the prefixes: | |
| `git diff`;; | |
| compares the (i)ndex and the (w)ork tree; | |
| `git diff HEAD`;; | |
| compares a (c)ommit and the (w)ork tree; | |
| `git diff --cached`;; | |
| compares a (c)ommit and the (i)ndex; | |
| `git diff HEAD:file1 file2`;; | |
| compares an (o)bject and a (w)ork tree entity; | |
| `git diff --no-index a b`;; | |
| compares two non-git things (1) and (2). | |
| diff.noprefix:: | |
| If set, 'git diff' does not show any source or destination prefix. | |
| diff.renameLimit:: | |
| The number of files to consider when performing the copy/rename | |
| detection; equivalent to the 'git diff' option '-l'. | |
| diff.renames:: | |
| Tells git to detect renames. If set to any boolean value, it | |
| will enable basic rename detection. If set to "copies" or | |
| "copy", it will detect copies, as well. | |
| diff.suppressBlankEmpty:: | |
| A boolean to inhibit the standard behavior of printing a space | |
| before each empty output line. Defaults to false. | |
| diff.submodule:: | |
| Specify the format in which differences in submodules are | |
| shown. The "log" format lists the commits in the range like | |
| linkgit:git-submodule[1] `summary` does. The "short" format | |
| format just shows the names of the commits at the beginning | |
| and end of the range. Defaults to short. | |
| diff.wordRegex:: | |
| A POSIX Extended Regular Expression used to determine what is a "word" | |
| when performing word-by-word difference calculations. Character | |
| sequences that match the regular expression are "words", all other | |
| characters are *ignorable* whitespace. | |
| diff.<driver>.command:: | |
| The custom diff driver command. See linkgit:gitattributes[5] | |
| for details. | |
| diff.<driver>.xfuncname:: | |
| The regular expression that the diff driver should use to | |
| recognize the hunk header. A built-in pattern may also be used. | |
| See linkgit:gitattributes[5] for details. | |
| diff.<driver>.binary:: | |
| Set this option to true to make the diff driver treat files as | |
| binary. See linkgit:gitattributes[5] for details. | |
| diff.<driver>.textconv:: | |
| The command that the diff driver should call to generate the | |
| text-converted version of a file. The result of the | |
| conversion is used to generate a human-readable diff. See | |
| linkgit:gitattributes[5] for details. | |
| diff.<driver>.wordregex:: | |
| The regular expression that the diff driver should use to | |
| split words in a line. See linkgit:gitattributes[5] for | |
| details. | |
| diff.<driver>.cachetextconv:: | |
| Set this option to true to make the diff driver cache the text | |
| conversion outputs. See linkgit:gitattributes[5] for details. | |
| diff.tool:: | |
| The diff tool to be used by linkgit:git-difftool[1]. This | |
| option overrides `merge.tool`, and has the same valid built-in | |
| values as `merge.tool` minus "tortoisemerge" and plus | |
| "kompare". Any other value is treated as a custom diff tool, | |
| and there must be a corresponding `difftool.<tool>.cmd` | |
| option. |