Re: [PATCH] diff: resurrect XDF_NEED_MINIMAL with --minimal
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Oct 3, 2011, 12:38 UTC
- Message-ID
- <20111003123843.GA15493@elie>
- In-Reply-To
- <7voby0j86c.fsf@alter.siamese.dyndns.org>
Junio C Hamano wrote:
> * This together with René's c5aa906 (Revert removal of multi-match > discard heuristic in 27af01, 2011-09-25) on top of v1.7.7 seems to give > identical diff output as v1.7.1 (e.g. "git diff-tree -p v2.6.39 v3.0" > in the kernel repository, with "--minimal").
Very neat.
Show 11 quoted lines
> --- a/diff.c
> +++ b/diff.c
> @@ -3511,6 +3511,10 @@ int diff_opt_parse(struct diff_options *options, const char **av, int ac)
> }
> else if (!strcmp(arg, "--abbrev"))
> options->abbrev = DEFAULT_ABBREV;
> + 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 (!prefixcmp(arg, "--abbrev=")) {I think this would fit well near --patience (the "xdiff options" section), instead of hidden between the unsticked and sticked forms of --abbrev. ;-)
Like this:
diff --git i/Documentation/diff-options.txt w/Documentation/diff-options.txt index b620b3af..4d87256e 100644 --- i/Documentation/diff-options.txt +++ w/Documentation/diff-options.txt @@ -48,6 +48,10 @@ endif::git-format-patch[] --patience:: Generate a diff using the "patience diff" algorithm. +--minimal:: + Spend extra time to make sure the smallest possible + diff is produced. + --stat[=<width>[,<name-width>[,<count>]]]:: Generate a diffstat. You can override the default output width for 80-column terminal by `--stat=<width>`. diff --git i/diff.c w/diff.c index fcc00780..2282f86f 100644 --- i/diff.c +++ w/diff.c @@ -3393,6 +3393,10 @@ int diff_opt_parse(struct diff_options *options, const char **av, int ac) DIFF_XDL_SET(options, IGNORE_WHITESPACE_AT_EOL); else if (!strcmp(arg, "--patience")) DIFF_XDL_SET(options, PATIENCE_DIFF); + 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, "--histogram")) DIFF_XDL_SET(options, HISTOGRAM_DIFF);