Thanks for the comments on V1. I have expanded the commit message for the first patch to give a bit more context and reworded a couple of test descriptions in patch 2 as suggested by Elijah. Patch 3 is unchanged. V1 Cover Letter: If the user removes all the changes from the worktree without running git reset then rebase --continue leaves behind .git/MERGE_MSG which will then seed the message of the next commit. While working on this I noticed a couple of fixups for the test files I was adding to, I've cc'd Elijah in case my reasoning for patch 2 is off. Thanks to Victor for the bug report. cc: Victor Gambier vgambier@xxxxxxxxxxx cc: Elijah Newren newren@xxxxxxxxx cc: Johannes Schindelin Johannes.Schindelin@xxxxxx Phillip Wood (3): t3403: fix commit authorship rebase --apply: restore some tests rebase --continue: remove .git/MERGE_MSG sequencer.c | 3 +++ t/t3403-rebase-skip.sh | 13 +++++++++++-- t/t3418-rebase-continue.sh | 18 ++++++++++++++---- 3 files changed, 28 insertions(+), 6 deletions(-) base-commit: 2d755dfac9aadab25c3e025b849252b8c0a61465 Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1013%2Fphillipwood%2Fwip%2Frebase-remove-merge-msg-v2 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1013/phillipwood/wip/rebase-remove-merge-msg-v2 Pull-Request: https://github.com/gitgitgadget/git/pull/1013 Range-diff vs v1: 1: 7559781ca92 ! 1: 8755dfa9d04 t3403: fix commit authorship @@ Commit message t3403: fix commit authorship Setting GIT_AUTHOR_* when committing with --amend will only change the - author if we also pass --reset-author + author if we also pass --reset-author. This commit is used in some + tests that ensure the author ident does not change when rebasing. + Creating this commit without changing the authorship meant that the + test would not catch regressions that caused rebase to discard the + original authorship information. Signed-off-by: Phillip Wood <phillip.wood@xxxxxxxxxxxxx> 2: f7722dab21d ! 2: 84fe5823b4f rebase --apply: restore some tests @@ Commit message from "am" to "merge"", 2020-02-15). However some tests seem to have been missed leading to us testing the "merge" backend twice. This patch fixes some cases that I noticed while adding tests to these - files, I have not audited all the other rebase test files. + files, I have not audited all the other rebase test files. I've + reworded a couple of the test descriptions to make it clear which + backend they are testing. Signed-off-by: Phillip Wood <phillip.wood@xxxxxxxxxxxxx> @@ t/t3403-rebase-skip.sh: test_expect_success setup ' test_expect_success 'rebase --skip can not be used with other options' ' ## t/t3418-rebase-continue.sh ## -@@ t/t3418-rebase-continue.sh: test_expect_success 'non-interactive rebase --continue works with touched file' +@@ t/t3418-rebase-continue.sh: test_expect_success 'setup' ' + git checkout main + ' + +-test_expect_success 'interactive rebase --continue works with touched file' ' ++test_expect_success 'merge based rebase --continue with works with touched file' ' + rm -fr .git/rebase-* && + git reset --hard && + git checkout main && +@@ t/t3418-rebase-continue.sh: test_expect_success 'interactive rebase --continue works with touched file' ' + git rebase --continue + ' + +-test_expect_success 'non-interactive rebase --continue works with touched file' ' ++test_expect_success 'apply based rebase --continue works with touched file' ' + rm -fr .git/rebase-* && git reset --hard && git checkout main && 3: 6a63b657f13 ! 3: 028c9dfc460 rebase --continue: remove .git/MERGE_MSG @@ t/t3403-rebase-skip.sh: test_expect_success 'moved back to branch correctly' ' test_must_fail git rebase -i --onto goodbye \ ## t/t3418-rebase-continue.sh ## -@@ t/t3418-rebase-continue.sh: test_expect_success 'interactive rebase --continue works with touched file' ' +@@ t/t3418-rebase-continue.sh: test_expect_success 'merge based rebase --continue with works with touched file' git rebase --continue ' -+test_expect_success 'rebase --continue removes .git/MERGE_MSG' ' ++test_expect_success 'merge based rebase --continue removes .git/MERGE_MSG' ' + git checkout -f --detach topic && + + test_must_fail git rebase --onto main HEAD^ && @@ t/t3418-rebase-continue.sh: test_expect_success 'interactive rebase --continue w + test_path_is_missing .git/MERGE_MSG +' + - test_expect_success 'non-interactive rebase --continue works with touched file' ' + test_expect_success 'apply based rebase --continue works with touched file' ' rm -fr .git/rebase-* && git reset --hard && -- gitgitgadget