summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: d52fd42)
raw | patch | inline | side by side (parent: d52fd42)
author | Johannes Schindelin <Johannes.Schindelin@gmx.de> | |
Mon, 11 Jun 2007 20:12:19 +0000 (21:12 +0100) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Tue, 12 Jun 2007 08:00:38 +0000 (01:00 -0700) |
Earlier, a second "-C" on the command line had no effect.
But "--find-copies-harder" is so long to type, let's make doubled -C
enable that option. It is in line with how "git blame" handles such
doubled options to mean "work harder".
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
But "--find-copies-harder" is so long to type, let's make doubled -C
enable that option. It is in line with how "git blame" handles such
doubled options to mean "work harder".
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/diff-options.txt | patch | blob | history | |
diff.c | patch | blob | history |
index b2a05937f9c57e3a6ec70849fcc7aeca277b103b..0f07c9c4a86df8ac2d7ab2f99e31226e395b63ab 100644 (file)
Detect renames.
-C::
- Detect copies as well as renames.
+ Detect copies as well as renames. See also `--find-copies-harder`.
--diff-filter=[ACDMRTUXB*]::
Select only files that are Added (`A`), Copied (`C`),
that matches other criteria, nothing is selected.
--find-copies-harder::
- For performance reasons, by default, -C option finds copies only
+ 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.
+ projects, so use it with caution. Giving more than one
+ `-C` option has the same effect.
-l<num>::
-M and -C options require O(n^2) processing time where n
index 1d234d361d29605c49da8fa177ebb563cf3066c1..4aa9bbc0116ac9081dee7aa8aa85507c401b5e53 100644 (file)
--- a/diff.c
+++ b/diff.c
options->detect_rename = DIFF_DETECT_RENAME;
}
else if (!prefixcmp(arg, "-C")) {
+ if (options->detect_rename == DIFF_DETECT_COPY)
+ options->find_copies_harder = 1;
if ((options->rename_score =
diff_scoreopt_parse(arg)) == -1)
return -1;