On Thu, Sep 19, 2019 at 3:06 PM Derrick Stolee via GitGitGadget <gitgitgadget@xxxxxxxxx> wrote: > > From: Derrick Stolee <dstolee@xxxxxxxxxxxxx> > > Getting started with a sparse-checkout file can be daunting. Help > users start their sparse enlistment using 'git sparse-checkout init'. > This will set 'core.sparseCheckout=true' in their config, write > an initial set of patterns to the sparse-checkout file, and update > their working directory. ...and ensure extensions.worktreeConfig is set to true. > Using 'git read-tree' to clear directories does not work cleanly > on Windows, so manually delete directories that are tracked by Git > before running read-tree. I thought you said you fixed this? It appears to no longer be part of the patch, so I'm guessing you just forgot to remove this comment from the commit message? > The use of running another process for 'git read-tree' is likely > suboptimal, but that can be improved in a later change, if valuable. I think it would also be worth mentioning that not only is a subprocess suboptimal, but the behavior of `git read-tree -mu HEAD` is itself suboptimal for a sparse-checkout. (We either need more error checking e.g. when the user is in the middle of a rebase or merge or cherry-pick and have conflicted entries with a more focused error message for the user, or we need a command that won't abort if the conflicts aren't in the paths we're trying to remove from or bring back to the working tree.) Patch looks good to me, assuming the caveats of using `git read-tree -mu HEAD` are better documented -- and hopefully addressed at some point. You addressed all my other feedback on this patch from the RFC series.