[PATCH v3 0/2] rebase -i: Fix left-behind CHERRY_PICK_HEAD
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jun 18, 2015, 16:38 UTC
- Message-ID
- <cover.1434645436.git.johannes.schindelin@gmx.de>
- In-Reply-To
- <cover.1434627492.git.johannes.schindelin@gmx.de>
These patches fix a bug that bites me often enough when rebasing Git for Windows.
The symptom is that .git/CHERRY_PICK_HEAD is left behind after skipping an already-merged patch with `git rebase --continue` instead of `git rebase --skip`. I always prefer the former invocation because the latter would also skip legitimate patches if there were merge conflicts, while the former would not allow that.
Changes since v2:
- the test uses `--exit-code` to verify that the result of the rebase is correct
Interdiff below the diffstat.
Johannes Schindelin (2): t3404: demonstrate CHERRY_PICK_HEAD bug rebase -i: do not leave a CHERRY_PICK_HEAD file behind
git-rebase--interactive.sh | 6 +++++- t/t3404-rebase-interactive.sh | 21 +++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-)
diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh index f3337ad..6bcf18b 100755 --- a/t/t3404-rebase-interactive.sh +++ b/t/t3404-rebase-interactive.sh @@ -1118,7 +1118,7 @@ test_expect_success 'rebase --continue removes CHERRY_PICK_HEAD' ' FAKE_LINES= test_must_fail git rebase -i seq-onto && test -d .git/rebase-merge && git rebase --continue && - git diff seq-onto && + git diff --exit-code seq-onto && test ! -d .git/rebase-merge && test ! -f .git/CHERRY_PICK_HEAD '
-- 2.3.1.windows.1.9.g8c01ab4