Thread (15 messages) 15 messages, 4 authors, 2018-04-27

Re: [PATCH 1/3] rebase -i: demonstrate bug with fixup!/squash! commit messages

From: Stefan Beller <hidden>
Date: 2018-04-20 16:40:51

On Fri, Apr 20, 2018 at 5:17 AM, Johannes Schindelin
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
When multiple fixup/squash commands are processed and the last one
causes merge conflicts and is skipped, we leave the "This is a
combination of ..." comments in the commit message.

Noticed by Eric Sunshine.

Signed-off-by: Johannes Schindelin <redacted>
---
 t/t3418-rebase-continue.sh | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
diff --git a/t/t3418-rebase-continue.sh b/t/t3418-rebase-continue.sh
index 9214d0bb511..b177baee322 100755
--- a/t/t3418-rebase-continue.sh
+++ b/t/t3418-rebase-continue.sh
@@ -88,6 +88,27 @@ test_expect_success 'rebase passes merge strategy options correctly' '
        git rebase --continue
 '

+test_expect_failure '--continue after failed fixup cleans commit message' '
+       git checkout -b with-conflicting-fixup &&
+       test_commit wants-fixup &&
+       test_commit "fixup! wants-fixup" wants-fixup.t 1 wants-fixup-1 &&
+       test_commit "fixup! wants-fixup" wants-fixup.t 2 wants-fixup-2 &&
+       test_commit "fixup! wants-fixup" wants-fixup.t 3 wants-fixup-3 &&
+       test_must_fail env FAKE_LINES="1 fixup 2 fixup 4" \
+               git rebase -i HEAD~4 &&
+
+       : now there is a conflict, and comments in the commit message &&
+       git show HEAD >out &&
+       grep "This is a combination of" out &&
test_i18n_grep ?
+
+       : skip and continue &&
+       git rebase --skip &&
+
+       : now the comments in the commit message should have been cleaned up &&
+       git show HEAD >out &&
+       ! grep "This is a combination of" out
same

Thanks,
Stefan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help