From: Junio C Hamano Date: Tue, 9 Apr 2019 17:14:23 +0000 (+0900) Subject: Merge branch 'jk/line-log-with-patch' X-Git-Tag: v2.22.0-rc0~127 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/31df2c1019733ac22fc848aa2658a0e25af70a79?ds=inline;hp=-c Merge branch 'jk/line-log-with-patch' "git log -L,:" with "-s" did not suppress the patch output as it should. This has been corrected. * jk/line-log-with-patch: line-log: detect unsupported formats line-log: suppress diff output with "-s" --- 31df2c1019733ac22fc848aa2658a0e25af70a79 diff --combined revision.c index eb8e51bc63,fc4f33fdd5..cb69a227d5 --- a/revision.c +++ b/revision.c @@@ -2151,9 -2151,6 +2151,9 @@@ static int handle_revision_opt(struct r revs->diff = 1; revs->dense_combined_merges = 0; revs->combine_merges = 1; + } else if (!strcmp(arg, "--combined-all-paths")) { + revs->diff = 1; + revs->combined_all_paths = 1; } else if (!strcmp(arg, "--cc")) { revs->diff = 1; revs->dense_combined_merges = 1; @@@ -2650,9 -2647,6 +2650,9 @@@ int setup_revisions(int argc, const cha } if (revs->combine_merges) revs->ignore_merges = 0; + if (revs->combined_all_paths && !revs->combine_merges) + die("--combined-all-paths makes no sense without -c or --cc"); + revs->diffopt.abbrev = revs->abbrev; if (revs->line_level_traverse) { @@@ -2689,6 -2683,10 +2689,10 @@@ if (revs->first_parent_only && revs->bisect) die(_("--first-parent is incompatible with --bisect")); + if (revs->line_level_traverse && + (revs->diffopt.output_format & ~(DIFF_FORMAT_PATCH | DIFF_FORMAT_NO_OUTPUT))) + die(_("-L does not yet support diff formats besides -p and -s")); + if (revs->expand_tabs_in_log < 0) revs->expand_tabs_in_log = revs->expand_tabs_in_log_default;