Skip to content

Commit

Permalink
t1092: add test for untracked files and directories
Browse files Browse the repository at this point in the history
Add a test verifying that sparse-checkout (with and without sparse index
enabled) treat untracked files & directories correctly when changing sparse
patterns. Specifically, it ensures that 'git sparse-checkout set'

* deletes empty directories outside the sparse cone
* does _not_ delete untracked files outside the sparse cone

Signed-off-by: Victoria Dye <[email protected]>
  • Loading branch information
vdye committed Sep 20, 2023
1 parent 433c5e9 commit c9f342c
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions t/t1092-sparse-checkout-compatibility.sh
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,22 @@ test_expect_success 'root directory cannot be sparse' '
test_cmp expect actual
'

test_expect_success 'sparse-checkout with untracked files and dirs' '
init_repos &&
# Empty directories outside sparse cone are deleted
run_on_sparse mkdir -p deep/empty &&
test_sparse_match git sparse-checkout set folder1 &&
test_must_be_empty sparse-checkout-err &&
run_on_sparse test_path_is_missing deep &&
# Untracked files outside sparse cone are not deleted
run_on_sparse touch folder1/another &&
test_sparse_match git sparse-checkout set folder2 &&
grep "directory ${SQ}folder1/${SQ} contains untracked files" sparse-checkout-err &&
run_on_sparse test_path_exists folder1/another
'

test_expect_success 'status with options' '
init_repos &&
test_sparse_match ls &&
Expand Down

0 comments on commit c9f342c

Please sign in to comment.