Re: [PATCH 1/2] rebase -i: respect commit.cleanup when picking fixups
From: Junio C Hamano <hidden>
Date: 2025-09-18 15:29:08
Phillip Wood [off-list ref] writes:
... The cause of that bug was that before f7d42ceec52 the sequencer passed CLEANUP_MSG when committing the final fixup. That commit should have simply removed the CLEANUP_MSG flag, not changed it to VERBATIM_MSG. Using VERBATIM_MSG ignores the user's commit.cleanup config when committing the final fixup which means it behaves differently to an ordinary "pick" command which respects commit.cleanup.
So cleanly analysed and clearly described.
quoted hunk
diff --git a/sequencer.c b/sequencer.c index 9ae40a91b24..47c57c2ea3c 100644 --- a/sequencer.c +++ b/sequencer.c@@ -2436,7 +2436,6 @@ static int do_pick_commit(struct repository *r, if (!final_fixup) msg_file = rebase_path_squash_msg(); else if (file_exists(rebase_path_fixup_msg())) { - flags |= VERBATIM_MSG; msg_file = rebase_path_fixup_msg(); } else { const char *dest = git_path_squash_msg(r);
And this is the location the earlier commit replaced the code that sets CLEANUP_MSG, which matches the fix described in the proposed log message. Makes sense. The commit at the source of the bug is what introduced VERBATIM_MSG, and I think it can be removed (this was the only place it was set). And you removed it in a separate step ;-). Well done. Thanks.