зеркало из https://github.com/microsoft/git.git
rebase -r: demonstrate bug with conflicting merges
When calling `merge` on a branch that has already been merged, that `merge` is skipped quietly, but currently a MERGE_HEAD file is being left behind and will then be grabbed by the next `pick` (that did not want to create a *merge* commit). Demonstrate this. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
8858448bb4
Коммит
f08110ddd8
|
@ -396,4 +396,20 @@ test_expect_success 'with --autosquash and --exec' '
|
||||||
grep "G: +G" actual
|
grep "G: +G" actual
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_failure '--continue after resolving conflicts after a merge' '
|
||||||
|
git checkout -b already-has-g E &&
|
||||||
|
git cherry-pick E..G &&
|
||||||
|
test_commit H2 &&
|
||||||
|
|
||||||
|
git checkout -b conflicts-in-merge H &&
|
||||||
|
test_commit H2 H2.t conflicts H2-conflict &&
|
||||||
|
test_must_fail git rebase -r already-has-g &&
|
||||||
|
grep conflicts H2.t &&
|
||||||
|
echo resolved >H2.t &&
|
||||||
|
git add -u &&
|
||||||
|
git rebase --continue &&
|
||||||
|
test_must_fail git rev-parse --verify HEAD^2 &&
|
||||||
|
test_path_is_missing .git/MERGE_HEAD
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Загрузка…
Ссылка в новой задаче