Merge pull request #419 from ldennington/sparse-index-diff

diff: enable and test the sparse index
This commit is contained in:
Lessley Dennington 2021-09-11 22:38:31 -07:00 коммит произвёл Johannes Schindelin
Родитель c120145765 b20e2759a9
Коммит 074ef6d3cd
1 изменённых файлов: 42 добавлений и 0 удалений

Просмотреть файл

@ -518,6 +518,43 @@ test_expect_success 'diff --cached' '
test_all_match git diff --cached
'
test_expect_success 'diff partially-staged' '
init_repos &&
write_script edit-contents <<-\EOF &&
echo text >>$1
EOF
# Add file within cone
test_all_match git sparse-checkout set deep &&
run_on_all ../edit-contents deep/testfile &&
test_all_match git add deep/testfile &&
run_on_all ../edit-contents deep/testfile &&
test_all_match git diff &&
test_all_match git diff --staged &&
# Add file outside cone
test_all_match git reset --hard &&
run_on_all mkdir newdirectory &&
run_on_all ../edit-contents newdirectory/testfile &&
test_all_match git sparse-checkout set newdirectory &&
test_all_match git add newdirectory/testfile &&
run_on_all ../edit-contents newdirectory/testfile &&
test_all_match git sparse-checkout set &&
test_all_match git diff &&
test_all_match git diff --staged &&
# Merge conflict outside cone
test_all_match git reset --hard &&
test_all_match git checkout merge-left &&
test_all_match test_must_fail git merge merge-right &&
test_all_match git diff &&
test_all_match git diff --staged
'
# NEEDSWORK: sparse-checkout behaves differently from full-checkout when
# running this test with 'df-conflict-2' after 'df-conflict-1'.
test_expect_success 'diff with renames and conflicts' '
@ -1453,6 +1490,11 @@ test_expect_success 'sparse-index is not expanded' '
ensure_not_expanded reset --merge update-deep &&
ensure_not_expanded reset --hard &&
echo a test change >>sparse-index/README.md &&
ensure_not_expanded diff &&
git -C sparse-index add README.md &&
ensure_not_expanded diff --staged &&
ensure_not_expanded reset base -- deep/a &&
ensure_not_expanded reset base -- nonexistent-file &&
ensure_not_expanded reset deepest -- deep &&