diff: resurrect XDF_NEED_MINIMAL with --minimal

Earlier, 582aa00 (git diff too slow for a file, 2010-05-02)
unconditionally dropped XDF_NEED_MINIMAL option from the internal xdiff
invocation to help performance on pathological cases, while hinting that a
follow-up patch could reintroduce it with "--minimal" option from the
command line.

Make it so.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Junio C Hamano 2011-10-01 21:56:28 -07:00
parent c5aa90682f
commit 81b568c839
2 changed files with 8 additions and 0 deletions

View file

@ -45,6 +45,10 @@ ifndef::git-format-patch[]
Synonym for `-p --raw`.
endif::git-format-patch[]
--minimal::
Spend extra time to make sure the smallest possible
diff is produced.
--patience::
Generate a diff using the "patience diff" algorithm.

4
diff.c
View file

@ -3385,6 +3385,10 @@ int diff_opt_parse(struct diff_options *options, const char **av, int ac)
}
/* xdiff options */
else if (!strcmp(arg, "--minimal"))
DIFF_XDL_SET(options, NEED_MINIMAL);
else if (!strcmp(arg, "--no-minimal"))
DIFF_XDL_CLR(options, NEED_MINIMAL);
else if (!strcmp(arg, "-w") || !strcmp(arg, "--ignore-all-space"))
DIFF_XDL_SET(options, IGNORE_WHITESPACE);
else if (!strcmp(arg, "-b") || !strcmp(arg, "--ignore-space-change"))