Browse Source

t6022: Add testcase for merging a renamed file with a simple change

This is a testcase that was broken by b2c8c0a (merge-recursive: When we
detect we can skip an update, actually skip it 2011-02-28) and fixed by
6db4105 (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>
maint
Elijah Newren 13 years ago committed by Junio C Hamano
parent
commit
7dd9c304be
  1. 27
      t/t6022-merge-rename.sh

27
t/t6022-merge-rename.sh

@ -673,4 +673,31 @@ test_expect_failure 'avoid unnecessary update, with D/F conflict' ' @@ -673,4 +673,31 @@ test_expect_failure 'avoid unnecessary update, with D/F conflict' '
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

Loading…
Cancel
Save