Re: [PATCH 01/10] t1092: add tests for status/add and sparse files
From: Derrick Stolee <hidden>
Date: 2021-04-21 13:24:48
On 4/20/2021 5:52 PM, Elijah Newren wrote:
On Tue, Apr 13, 2021 at 7:01 AM Derrick Stolee via GitGitGadget [off-list ref] wrote: I'll note in particular that it's easy for users after running "git add" to run other things such as "git sparse-checkout reapply" or "git switch $otherbranch" and suddenly the file disappears from the working tree. From the sparse-checkout machinery that makes sense; this path doesn't match the .git/info/sparse-checkout list of paths, so it should be removed from the working tree. But it's very disorienting to users. Especially if some of those commands are side-effects of other commands (e.g. our build system invokes "git sparse-checkout reapply" in various cases, most common of which is that even a simple "git pull" can bring down code with dependency changes and thus a need for new sparsity rules and whatnot), but it definitely can just happen in ways users don't expect with their own commands (e.g. the git switch/checkout example). The patch looks good, but it'd be nice if while documenting it we also add a comment that we believe we want to change the behavior (for sparse-checkout both with and without sparse-index). It's one of those many paper-cuts we still have.
I can try to comment on these corner case tests that the behavior is not intended to be permanent, especially when already needing to comment how strange it is acting. Thanks, -Stolee