add: update --chmod to skip sparse paths
commit63b60b3add7527c202124982e0b14a6a512f0450
authorDerrick Stolee <dstolee@microsoft.com>
Fri, 24 Sep 2021 15:39:09 +0000 (24 15:39 +0000)
committerJunio C Hamano <gitster@pobox.com>
Tue, 28 Sep 2021 17:31:02 +0000 (28 10:31 -0700)
treeb80551785be6bf6118a9c9f1c37a4f5a2fb637f0
parent0299a69694fcf486a0880439bb4dacfafe3ffc38
add: update --chmod to skip sparse paths

We added checks for path_in_sparse_checkout() to portions of 'git add'
that add warnings and prevent staging a modification, but we skipped the
--chmod mode. Update chmod_pathspec() to ignore cache entries whose path
is outside of the sparse-checkout cone (unless --sparse is provided).
Add a test in t3705.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/add.c
t/t3705-add-sparse-checkout.sh