From: James Ramsay Date: Thu, 12 Mar 2020 03:58:06 GMT Subject: [TOPIC 4/17] Sparse checkout Message-ID: <577F08D9-719A-4C66-B135-DC62E68AC941@jramsay.com.au> In-Reply-To: 1. Stolee: built in! We’re making improvements! We’re looking at UX - add, remove, state. Harder things like grep needs everything, but not expected. 2. Elijah: we do have a strongly worded warning, so we could just change it. 3. Jonathan N: I like both modes. 4. Terry: how is GC wired up? If I change a cone, will it be reclaimed? 5. Stolee: GC doesn’t remove reachable objects. Haven’t found people need to do this, unless they accidentally rehydrated something massive they didn’t really need. Day to day work doesn’t introduce too much. 6. Terry: Android devs have massive special machines. Constantly running out of disk space. 7. Stolee: more of a partial clone feature, than a sparse checkout feature. If I checkout three branches, go offline, I don’t want GC to clean things that I had downloaded. 8. Jonathan N: switching between Word and Powerpoint. Would it be useful to attach cone to branch rather than repo. 9. Stolee: Office team is building some kind of magic to automatically detect from branch. 10. Brian: can use reflog maybe. Prune based on that? People who run out of disk space could have shorter reflog. 11. Elijah: biggest problem people run into doing a rebase/pull, hit conflicts, then they need to update sparsity patterns, which they can’t do because there are conflicts. Working on a patch. 12. Stolee: Office scoper tool would automatically recalculate dependencies and update sparsity config so that they can build. 13. During break, Minh brought up an idea that we could use in-tree data to manage the dependency chain: The tree could contain files that contain directory names, and users use config to specify the list of those files to use for the sparse-checkout definition. When Git updates the working directory and those files change, the sparse-checkout can be updated to include the union of those directories. Stolee will look into how this could work and whether this works for existing customers.