Do a cross-project merge of Paul Mackerras' gitk visualizer
[gitweb.git] / Documentation / git-diff-files.txt
index 1eae3d03337881359c7561cb0ac35c37cd67b8e8..32e9a1e7609eb6f6474bbf94be38585223fcda66 100644 (file)
@@ -9,7 +9,7 @@ git-diff-files - Compares files in the working tree and the cache
 
 SYNOPSIS
 --------
-'git-diff-files' [-p] [-q] [-r] [-z] [-M] [-C] [-R] [<pattern>...]
+'git-diff-files' [-p] [-q] [-r] [-z] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] [<path>...]
 
 DESCRIPTION
 -----------
@@ -27,13 +27,37 @@ OPTIONS
        Remain silent even on nonexisting files
 
 -R::
-       Output diff in reverse.
+       Swap two inputs; that is, show differences from on-disk files
+       to cache contents.
+
+-B::
+       Break complete rewrite changes into pairs of delete and create.
 
 -M::
-       Detect renames; implies -p.
+       Detect renames.
 
 -C::
-       Detect copies as well as renames; implies -p.
+       Detect copies as well as renames.
+
+--find-copies-harder::
+       By default, -C option finds copies only if the original
+       file of the copy was modified in the same changeset for
+       performance reasons.  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.
+
+-S<string>::
+       Look for differences that contains the change in <string>.
+
+--pickaxe-all::
+       When -S finds a change, show all the changes in that
+       changeset, not just the files that contains the change
+       in <string>.
+
+-O<orderfile>::
+       Output the patch in the order specified in the
+       <orderfile>, which has one shell glob pattern per line.
 
 -r::
        This flag does not mean anything.  It is there only to match