]>
Commit | Line | Data |
---|---|---|
19299a84 RR |
1 | diff.autorefreshindex:: |
2 | When using 'git diff' to compare with work tree | |
3 | files, do not consider stat-only change as changed. | |
4 | Instead, silently run `git update-index --refresh` to | |
5 | update the cached stat information for paths whose | |
6 | contents in the work tree match the contents in the | |
7 | index. This option defaults to true. Note that this | |
8 | affects only 'git diff' Porcelain, and not lower level | |
9 | 'diff' commands such as 'git diff-files'. | |
10 | ||
2d174951 JH |
11 | diff.dirstat:: |
12 | A comma separated list of `--dirstat` parameters specifying the | |
13 | default behavior of the `--dirstat` option to linkgit:git-diff[1]` | |
14 | and friends. The defaults can be overridden on the command line | |
15 | (using `--dirstat=<param1,param2,...>`). The fallback defaults | |
16 | (when not changed by `diff.dirstat`) are `changes,noncumulative,3`. | |
17 | The following parameters are available: | |
18 | + | |
19 | -- | |
20 | `changes`;; | |
21 | Compute the dirstat numbers by counting the lines that have been | |
22 | removed from the source, or added to the destination. This ignores | |
23 | the amount of pure code movements within a file. In other words, | |
24 | rearranging lines in a file is not counted as much as other changes. | |
25 | This is the default behavior when no parameter is given. | |
1c57a627 JH |
26 | `lines`;; |
27 | Compute the dirstat numbers by doing the regular line-based diff | |
28 | analysis, and summing the removed/added line counts. (For binary | |
29 | files, count 64-byte chunks instead, since binary files have no | |
30 | natural concept of lines). This is a more expensive `--dirstat` | |
31 | behavior than the `changes` behavior, but it does count rearranged | |
32 | lines within a file as much as other changes. The resulting output | |
33 | is consistent with what you get from the other `--*stat` options. | |
2d174951 JH |
34 | `files`;; |
35 | Compute the dirstat numbers by counting the number of files changed. | |
36 | Each changed file counts equally in the dirstat analysis. This is | |
37 | the computationally cheapest `--dirstat` behavior, since it does | |
38 | not have to look at the file contents at all. | |
39 | `cumulative`;; | |
40 | Count changes in a child directory for the parent directory as well. | |
41 | Note that when using `cumulative`, the sum of the percentages | |
42 | reported may exceed 100%. The default (non-cumulative) behavior can | |
43 | be specified with the `noncumulative` parameter. | |
44 | <limit>;; | |
45 | An integer parameter specifies a cut-off percent (3% by default). | |
46 | Directories contributing less than this percentage of the changes | |
47 | are not shown in the output. | |
48 | -- | |
49 | + | |
50 | Example: The following will count changed files, while ignoring | |
51 | directories with less than 10% of the total amount of changed files, | |
52 | and accumulating child directory counts in the parent directories: | |
53 | `files,10,cumulative`. | |
54 | ||
df44483a ZJS |
55 | diff.statGraphWidth:: |
56 | Limit the width of the graph part in --stat output. If set, applies | |
57 | to all commands generating --stat outuput except format-patch. | |
58 | ||
19299a84 RR |
59 | diff.external:: |
60 | If this config variable is set, diff generation is not | |
61 | performed using the internal diff machinery, but using the | |
62 | given command. Can be overridden with the `GIT_EXTERNAL_DIFF' | |
63 | environment variable. The command is called with parameters | |
64 | as described under "git Diffs" in linkgit:git[1]. Note: if | |
65 | you want to use an external diff program only on a subset of | |
66 | your files, you might want to use linkgit:gitattributes[5] instead. | |
67 | ||
68 | diff.ignoreSubmodules:: | |
69 | Sets the default value of --ignore-submodules. Note that this | |
70 | affects only 'git diff' Porcelain, and not lower level 'diff' | |
71 | commands such as 'git diff-files'. 'git checkout' also honors | |
72 | this setting when reporting uncommitted changes. | |
73 | ||
74 | diff.mnemonicprefix:: | |
75 | If set, 'git diff' uses a prefix pair that is different from the | |
76 | standard "a/" and "b/" depending on what is being compared. When | |
77 | this configuration is in effect, reverse diff output also swaps | |
78 | the order of the prefixes: | |
79 | `git diff`;; | |
80 | compares the (i)ndex and the (w)ork tree; | |
81 | `git diff HEAD`;; | |
82 | compares a (c)ommit and the (w)ork tree; | |
83 | `git diff --cached`;; | |
84 | compares a (c)ommit and the (i)ndex; | |
85 | `git diff HEAD:file1 file2`;; | |
86 | compares an (o)bject and a (w)ork tree entity; | |
87 | `git diff --no-index a b`;; | |
88 | compares two non-git things (1) and (2). | |
89 | ||
90 | diff.noprefix:: | |
91 | If set, 'git diff' does not show any source or destination prefix. | |
92 | ||
93 | diff.renameLimit:: | |
94 | The number of files to consider when performing the copy/rename | |
95 | detection; equivalent to the 'git diff' option '-l'. | |
96 | ||
97 | diff.renames:: | |
98 | Tells git to detect renames. If set to any boolean value, it | |
99 | will enable basic rename detection. If set to "copies" or | |
100 | "copy", it will detect copies, as well. | |
101 | ||
102 | diff.suppressBlankEmpty:: | |
103 | A boolean to inhibit the standard behavior of printing a space | |
104 | before each empty output line. Defaults to false. | |
105 | ||
90b94c26 RR |
106 | diff.<driver>.command:: |
107 | The custom diff driver command. See linkgit:gitattributes[5] | |
108 | for details. | |
109 | ||
110 | diff.<driver>.xfuncname:: | |
111 | The regular expression that the diff driver should use to | |
112 | recognize the hunk header. A built-in pattern may also be used. | |
113 | See linkgit:gitattributes[5] for details. | |
114 | ||
115 | diff.<driver>.binary:: | |
116 | Set this option to true to make the diff driver treat files as | |
117 | binary. See linkgit:gitattributes[5] for details. | |
118 | ||
119 | diff.<driver>.textconv:: | |
120 | The command that the diff driver should call to generate the | |
121 | text-converted version of a file. The result of the | |
122 | conversion is used to generate a human-readable diff. See | |
123 | linkgit:gitattributes[5] for details. | |
124 | ||
125 | diff.<driver>.wordregex:: | |
126 | The regular expression that the diff driver should use to | |
127 | split words in a line. See linkgit:gitattributes[5] for | |
128 | details. | |
129 | ||
130 | diff.<driver>.cachetextconv:: | |
131 | Set this option to true to make the diff driver cache the text | |
132 | conversion outputs. See linkgit:gitattributes[5] for details. | |
48672b3d RR |
133 | |
134 | diff.tool:: | |
135 | The diff tool to be used by linkgit:git-difftool[1]. This | |
136 | option overrides `merge.tool`, and has the same valid built-in | |
137 | values as `merge.tool` minus "tortoisemerge" and plus | |
138 | "kompare". Any other value is treated as a custom diff tool, | |
139 | and there must be a corresponding `difftool.<tool>.cmd` | |
140 | option. |