From: Derrick Stolee Date: Fri, 26 Sep 2025 13:40:10 GMT Subject: Re: [PATCH v3 0/7] sparse-checkout: add 'clean' command Message-ID: <71c5d266-18ff-4ad3-81a3-30b9a1fefde2@gmail.com> In-Reply-To: On 9/12/2025 12:12 PM, Junio C Hamano wrote: > "Derrick Stolee via GitGitGadget" writes: > >> NEW: This series is rebased on a recent master to remove dependence on the >> updates to the global variables used by the sparse-checkout system. >> >> When using cone-mode sparse-checkout, users specify which tracked >> directories they want (recursively) and any directory not part of the parent >> paths for those directories are considered "out of scope". When changing >> sparse-checkouts, there are a variety of reasons why these "out of scope" >> directories could remain, including: >> >> * The user has .gitignore or .git/info/exclude files that tell Git to not >> remove files of a certain type. >> * Some filesystem blocker prevented the removal of a tracked file. This is >> usually more of an issue on Windows where a read handle will block file >> deletion. > > The updated documentation was easeier to follow (even though I had a > "Huh?" moment with "Opportunistically" a bit). Comparing with the > previous version (with my rebase to get rid of the dependence on the > other topic) and this one, I see a few more code paths have learned > to pass "struct repository *" pointers throughout the callchain, > which is very nice. I'm hoping to see some feedback from Elijah whose feedback on v2 was very helpful. Here is a ping to see if he's available. Thanks, -Stolee