1// Please don't remove this comment as asciidoc behaves badly when 2// the first non-empty line is ifdef/ifndef. The symptom is that 3// without this comment the <git-diff-core> attribute conditionally 4// defined below ends up being defined unconditionally. 5// Last checked with asciidoc 7.0.2. 6 7ifndef::git-format-patch[] 8ifndef::git-diff[] 9ifndef::git-log[] 10:git-diff-core: 1 11endif::git-log[] 12endif::git-diff[] 13endif::git-format-patch[] 14 15ifdef::git-format-patch[] 16-p:: 17 Generate patches without diffstat. 18endif::git-format-patch[] 19 20ifndef::git-format-patch[] 21-p:: 22 Generate patch (see section on generating patches). 23 {git-diff? This is the default.} 24endif::git-format-patch[] 25 26-u:: 27 Synonym for "-p". 28 29-U<n>:: 30 Shorthand for "--unified=<n>". 31 32--unified=<n>:: 33 Generate diffs with <n> lines of context instead of 34 the usual three. Implies "-p". 35 36--raw:: 37 Generate the raw format. 38 {git-diff-core? This is the default.} 39 40--patch-with-raw:: 41 Synonym for "-p --raw". 42 43--stat[=width[,name-width]]:: 44 Generate a diffstat. You can override the default 45 output width for 80-column terminal by "--stat=width". 46 The width of the filename part can be controlled by 47 giving another width to it separated by a comma. 48 49--numstat:: 50 Similar to \--stat, but shows number of added and 51 deleted lines in decimal notation and pathname without 52 abbreviation, to make it more machine friendly. For 53 binary files, outputs two `-` instead of saying 54 `0 0`. 55 56--shortstat:: 57 Output only the last line of the --stat format containing total 58 number of modified files, as well as number of added and deleted 59 lines. 60 61--summary:: 62 Output a condensed summary of extended header information 63 such as creations, renames and mode changes. 64 65--patch-with-stat:: 66 Synonym for "-p --stat". 67 {git-format-patch? This is the default.} 68 69-z:: 70 NUL-line termination on output. This affects the --raw 71 output field terminator. Also output from commands such 72 as "git-log" will be delimited with NUL between commits. 73 74--name-only:: 75 Show only names of changed files. 76 77--name-status:: 78 Show only names and status of changed files. See the description 79 of the `--diff-filter` option on what the status letters mean. 80 81--color:: 82 Show colored diff. 83 84--no-color:: 85 Turn off colored diff, even when the configuration file 86 gives the default to color output. 87 88--color-words:: 89 Show colored word diff, i.e. color words which have changed. 90 91--no-renames:: 92 Turn off rename detection, even when the configuration 93 file gives the default to do so. 94 95--check:: 96 Warn if changes introduce trailing whitespace 97 or an indent that uses a space before a tab. Exits with 98 non-zero status if problems are found. Not compatible with 99 --exit-code. 100 101--full-index:: 102 Instead of the first handful characters, show full 103 object name of pre- and post-image blob on the "index" 104 line when generating a patch format output. 105 106--binary:: 107 In addition to --full-index, output "binary diff" that 108 can be applied with "git apply". 109 110--abbrev[=<n>]:: 111 Instead of showing the full 40-byte hexadecimal object 112 name in diff-raw format output and diff-tree header 113 lines, show only handful hexdigits prefix. This is 114 independent of --full-index option above, which controls 115 the diff-patch output format. Non default number of 116 digits can be specified with --abbrev=<n>. 117 118-B:: 119 Break complete rewrite changes into pairs of delete and create. 120 121-M:: 122 Detect renames. 123 124-C:: 125 Detect copies as well as renames. See also `--find-copies-harder`. 126 127--diff-filter=[ACDMRTUXB*]:: 128 Select only files that are Added (`A`), Copied (`C`), 129 Deleted (`D`), Modified (`M`), Renamed (`R`), have their 130 type (mode) changed (`T`), are Unmerged (`U`), are 131 Unknown (`X`), or have had their pairing Broken (`B`). 132 Any combination of the filter characters may be used. 133 When `*` (All-or-none) is added to the combination, all 134 paths are selected if there is any file that matches 135 other criteria in the comparison; if there is no file 136 that matches other criteria, nothing is selected. 137 138--find-copies-harder:: 139 For performance reasons, by default, `-C` option finds copies only 140 if the original file of the copy was modified in the same 141 changeset. This flag makes the command 142 inspect unmodified files as candidates for the source of 143 copy. This is a very expensive operation for large 144 projects, so use it with caution. Giving more than one 145 `-C` option has the same effect. 146 147-l<num>:: 148 -M and -C options require O(n^2) processing time where n 149 is the number of potential rename/copy targets. This 150 option prevents rename/copy detection from running if 151 the number of rename/copy targets exceeds the specified 152 number. 153 154-S<string>:: 155 Look for differences that contain the change in <string>. 156 157--pickaxe-all:: 158 When -S finds a change, show all the changes in that 159 changeset, not just the files that contain the change 160 in <string>. 161 162--pickaxe-regex:: 163 Make the <string> not a plain string but an extended POSIX 164 regex to match. 165 166-O<orderfile>:: 167 Output the patch in the order specified in the 168 <orderfile>, which has one shell glob pattern per line. 169 170-R:: 171 Swap two inputs; that is, show differences from index or 172 on-disk file to tree contents. 173 174--text:: 175 Treat all files as text. 176 177-a:: 178 Shorthand for "--text". 179 180--ignore-space-at-eol:: 181 Ignore changes in whitespace at EOL. 182 183--ignore-space-change:: 184 Ignore changes in amount of whitespace. This ignores whitespace 185 at line end, and considers all other sequences of one or 186 more whitespace characters to be equivalent. 187 188-b:: 189 Shorthand for "--ignore-space-change". 190 191--ignore-all-space:: 192 Ignore whitespace when comparing lines. This ignores 193 differences even if one line has whitespace where the other 194 line has none. 195 196-w:: 197 Shorthand for "--ignore-all-space". 198 199--exit-code:: 200 Make the program exit with codes similar to diff(1). 201 That is, it exits with 1 if there were differences and 202 0 means no differences. 203 204--quiet:: 205 Disable all output of the program. Implies --exit-code. 206 207--ext-diff:: 208 Allow an external diff helper to be executed. If you set an 209 external diff driver with linkgit:gitattributes[5], you need 210 to use this option with linkgit:git-log[1] and friends. 211 212--no-ext-diff:: 213 Disallow external diff drivers. 214 215--src-prefix=<prefix>:: 216 Show the given source prefix instead of "a/". 217 218--dst-prefix=<prefix>:: 219 Show the given destination prefix instead of "b/". 220 221--no-prefix:: 222 Do not show any source or destination prefix. 223 224For more detailed explanation on these common options, see also 225link:diffcore.html[diffcore documentation].