summaryrefslogtreecommitdiff
path: root/Documentation/diff-options.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/diff-options.txt')
-rw-r--r--Documentation/diff-options.txt94
1 files changed, 94 insertions, 0 deletions
diff --git a/Documentation/diff-options.txt b/Documentation/diff-options.txt
new file mode 100644
index 0000000..c183dc9
--- /dev/null
+++ b/Documentation/diff-options.txt
@@ -0,0 +1,94 @@
+-p::
+ Generate patch (see section on generating patches)
+
+-u::
+ Synonym for "-p".
+
+--patch-with-raw::
+ Generate patch but keep also the default raw diff output.
+
+--stat::
+ Generate a diffstat instead of a patch.
+
+--patch-with-stat::
+ Generate patch and prepend its diffstat.
+
+-z::
+ \0 line termination on output
+
+--name-only::
+ Show only names of changed files.
+
+--name-status::
+ Show only names and status of changed files.
+
+--full-index::
+ Instead of the first handful characters, show full
+ object name of pre- and post-image blob on the "index"
+ line when generating a patch format output.
+
+--abbrev[=<n>]::
+ Instead of showing the full 40-byte hexadecimal object
+ name in diff-raw format output and diff-tree header
+ lines, show only handful hexdigits prefix. This is
+ independent of --full-index option above, which controls
+ the diff-patch output format. Non default number of
+ digits can be specified with --abbrev=<n>.
+
+-B::
+ Break complete rewrite changes into pairs of delete and create.
+
+-M::
+ Detect renames.
+
+-C::
+ Detect copies as well as renames.
+
+--diff-filter=[ACDMRTUXB*]::
+ Select only files that are Added (`A`), Copied (`C`),
+ Deleted (`D`), Modified (`M`), Renamed (`R`), have their
+ type (mode) changed (`T`), are Unmerged (`U`), are
+ Unknown (`X`), or have had their pairing Broken (`B`).
+ Any combination of the filter characters may be used.
+ When `*` (All-or-none) is added to the combination, all
+ paths are selected if there is any file that matches
+ other criteria in the comparison; if there is no file
+ that matches other criteria, nothing is selected.
+
+--find-copies-harder::
+ For performance reasons, by default, -C option finds copies only
+ if the original file of the copy was modified in the same
+ changeset. This flag makes the command
+ inspect unmodified files as candidates for the source of
+ copy. This is a very expensive operation for large
+ projects, so use it with caution.
+
+-l<num>::
+ -M and -C options require O(n^2) processing time where n
+ is the number of potential rename/copy targets. This
+ option prevents rename/copy detection from running if
+ the number of rename/copy targets exceeds the specified
+ number.
+
+-S<string>::
+ Look for differences that contain the change in <string>.
+
+--pickaxe-all::
+ When -S finds a change, show all the changes in that
+ changeset, not just the files that contain the change
+ in <string>.
+
+--pickaxe-regex::
+ Make the <string> not a plain string but an extended POSIX
+ regex to match.
+
+-O<orderfile>::
+ Output the patch in the order specified in the
+ <orderfile>, which has one shell glob pattern per line.
+
+-R::
+ Swap two inputs; that is, show differences from index or
+ on-disk file to tree contents.
+
+For more detailed explanation on these common options, see also
+link:diffcore.html[diffcore documentation].