From: Eric Wong Date: Sun, 1 Oct 2023 09:54:22 +0000 (+0000) Subject: lei rediff: `git diff -O' support X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d3f4fcd36fda8cc56b3fa6931935b91a579d4fa0;p=thirdparty%2Fpublic-inbox.git lei rediff: `git diff -O' support We can't use the `-O' switch since it conflicts with --only|-O= to specify externals. Thus we'll introduce a more verbose `--order-file=FILE' option when running `git diff'. --- diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm index beb0f8979..48c5644b1 100644 --- a/lib/PublicInbox/LEI.pm +++ b/lib/PublicInbox/LEI.pm @@ -159,7 +159,7 @@ our @diff_opt = qw(unified|U=i output-indicator-new=s output-indicator-old=s rename-empty! check ws-error-highlight=s full-index binary abbrev:i break-rewrites|B:s find-renames|M:s find-copies:s find-copies-harder irreversible-delete|D l=i diff-filter=s - S=s G=s find-object=s pickaxe-all pickaxe-regex O=s R + S=s G=s find-object=s pickaxe-all pickaxe-regex R relative:s text|a ignore-cr-at-eol ignore-space-at-eol ignore-space-change|b ignore-all-space|w ignore-blank-lines inter-hunk-context=i function-context|W exit-code ext-diff @@ -198,8 +198,8 @@ our %CMD = ( # sorted in order of importance/use: 'rediff' => [ '--stdin|LOCATION...', 'regenerate a diff with different options', 'stdin|', # /|\z/ must be first for lone dash - qw(git-dir=s@ cwd! verbose|v+ color:s no-color drq:1 dequote-only:1), - @diff_opt, @lxs_opt, @net_opt, @c_opt ], + qw(git-dir=s@ cwd! verbose|v+ color:s no-color drq:1 dequote-only:1 + order-file=s), @diff_opt, @lxs_opt, @net_opt, @c_opt ], 'mail-diff' => [ '--stdin|LOCATION...', 'diff the contents of emails', 'stdin|', # /|\z/ must be first for lone dash diff --git a/lib/PublicInbox/LeiRediff.pm b/lib/PublicInbox/LeiRediff.pm index efd24d174..6cc6131be 100644 --- a/lib/PublicInbox/LeiRediff.pm +++ b/lib/PublicInbox/LeiRediff.pm @@ -82,6 +82,7 @@ sub _lei_diff_prepare ($$) { push @$cmd, $c ? "-$c" : "--$o"; } } + push(@$cmd, "-O$opt->{'order-file'}") if $opt->{'order-file'}; } sub diff_ctxq ($$) {