diff options
author | Andy Koppe <andy.koppe@gmail.com> | 2023-11-15 00:43:38 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2023-11-16 03:18:22 +0300 |
commit | 297be59456f2d27710de01ab88c025241ccb4206 (patch) | |
tree | d098ffe7221db6b6faa92c145d3df0862bedfa47 /builtin/rebase.c | |
parent | 75cf39b1178f5e6c2830bf3e81521828bb0171ff (diff) |
rebase: support --autosquash without -i
The rebase --autosquash option is quietly ignored when used without
--interactive (apart from preventing preemptive fast-forwarding and
triggering conflicts with apply backend options).
Change that to support --autosquash without --interactive, by dropping
its restriction to REBASE_INTERACTIVE_EXCPLICIT mode. When used this
way, auto-squashing is done without opening the todo list editor.
Drop the -i requirement from the --autosquash description, and amend
t3415-rebase-autosquash.sh to test the option and the rebase.autoSquash
config variable with and without -i.
Signed-off-by: Andy Koppe <andy.koppe@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/rebase.c')
-rw-r--r-- | builtin/rebase.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/builtin/rebase.c b/builtin/rebase.c index a73de7892b..9f8192e0a5 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -710,10 +710,8 @@ static int run_specific_rebase(struct rebase_options *opts) if (opts->type == REBASE_MERGE) { /* Run sequencer-based rebase */ setenv("GIT_CHERRY_PICK_HELP", resolvemsg, 1); - if (!(opts->flags & REBASE_INTERACTIVE_EXPLICIT)) { + if (!(opts->flags & REBASE_INTERACTIVE_EXPLICIT)) setenv("GIT_SEQUENCE_EDITOR", ":", 1); - opts->autosquash = 0; - } if (opts->gpg_sign_opt) { /* remove the leading "-S" */ char *tmp = xstrdup(opts->gpg_sign_opt + 2); |