summaryrefslogtreecommitdiff
path: root/t/t5515
diff options
context:
space:
mode:
authorLibravatar Victoria Dye <vdye@github.com>2022-01-11 18:05:02 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2022-01-13 13:49:45 -0800
commit88078f543b769dc13ae9796372651178584a25a0 (patch)
tree6a2cfae873434b47fb22f03a81c24265bdd57dc9 /t/t5515
parentcheckout-index: expand sparse checkout compatibility tests (diff)
downloadtgif-88078f543b769dc13ae9796372651178584a25a0.tar.xz
checkout-index: add --ignore-skip-worktree-bits option
Update `checkout-index` to no longer refresh files that have the `skip-worktree` bit set, exiting with an error if `skip-worktree` filenames are directly provided to `checkout-index`. The newly-added `--ignore-skip-worktree-bits` option provides a mechanism to replicate the old behavior, checking out *all* files specified (even those with `skip-worktree` enabled). The ability to toggle whether files should be checked-out based on `skip-worktree` already exists in `git checkout` and `git restore` (both of which have an `--ignore-skip-worktree-bits` option). The change to, by default, ignore `skip-worktree` files is especially helpful for sparse-checkout; it prevents inadvertent creation of files outside the sparse definition on disk and eliminates the need to expand a sparse index when using the `--all` option. Internal usage of `checkout-index` in `git stash` and `git filter-branch` do not make explicit use of files with `skip-worktree` enabled, so `--ignore-skip-worktree-bits` is not added to them. Helped-by: Elijah Newren <newren@gmail.com> Signed-off-by: Victoria Dye <vdye@github.com> Reviewed-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t5515')
0 files changed, 0 insertions, 0 deletions