rebase -i: permit 'drop' of a merge commit
4c063c82e9 (rebase -i: improve error message when picking merge, 2024-05-30) added advice texts for cases when a merge commit is passed as argument of sequencer command that cannot operate with a merge commit. However, it forgot about the 'drop' command, so that in this case the BUG() in the default branch is reached. Handle 'drop' like 'merge', i.e., permit it without a message. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Johannes Sixt committed
Aug 6, 2025 at 19:38 UTC
4d491ade8f6597904a7b79ff5d34f8524f915ac2
2 files changed
+2
sequencer.c
+1
index 407ee4e90f..7a0b050b15 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -2683,6 +2683,7 @@ static int check_merge_commit_insn(enum todo_command command)
return error(_("cannot squash merge commit into another commit"));
case TODO_MERGE:
+ case TODO_DROP:
return 0;
default:
t/t3404-rebase-interactive.sh
+1
index ecfc02062c..50f8ca0d3f 100755
--- a/t/t3404-rebase-interactive.sh
+++ b/t/t3404-rebase-interactive.sh
@@ -2249,6 +2249,7 @@ test_expect_success 'non-merge commands reject merge commits' '
edit $oid
fixup $oid
squash $oid
+ drop $oid # acceptable, no advice
EOF
(
set_replace_editor todo &&