зеркало из https://github.com/microsoft/git.git
t6022: Add testcase for merging a renamed file with a simple change
This is a testcase that was broken byb2c8c0a
(merge-recursive: When we detect we can skip an update, actually skip it 2011-02-28) and fixed by6db4105
(Revert "Merge branch 'en/merge-recursive'" 2011-05-19). Include this testcase to ensure we don't regress it again. Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
f1a0f457b3
Коммит
7dd9c304be
|
@ -673,4 +673,31 @@ test_expect_failure 'avoid unnecessary update, with D/F conflict' '
|
||||||
test_cmp expect actual # "df" should have stayed intact
|
test_cmp expect actual # "df" should have stayed intact
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'setup merge of rename + small change' '
|
||||||
|
git reset --hard &&
|
||||||
|
git checkout --orphan rename-plus-small-change &&
|
||||||
|
git rm -rf . &&
|
||||||
|
git clean -fdqx &&
|
||||||
|
|
||||||
|
echo ORIGINAL >file &&
|
||||||
|
git add file &&
|
||||||
|
|
||||||
|
test_tick &&
|
||||||
|
git commit -m Initial &&
|
||||||
|
git checkout -b rename_branch &&
|
||||||
|
git mv file renamed_file &&
|
||||||
|
git commit -m Rename &&
|
||||||
|
git checkout rename-plus-small-change &&
|
||||||
|
echo NEW-VERSION >file &&
|
||||||
|
git commit -a -m Reformat
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'merge rename + small change' '
|
||||||
|
git merge rename_branch &&
|
||||||
|
|
||||||
|
test 1 -eq $(git ls-files -s | wc -l) &&
|
||||||
|
test 0 -eq $(git ls-files -o | wc -l) &&
|
||||||
|
test $(git rev-parse HEAD:renamed_file) = $(git rev-parse HEAD~1:file)
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Загрузка…
Ссылка в новой задаче