Partial Clone: Commands that could be problematic

From: Derrick Stolee <hidden>
Date: 2018-03-07 13:57:17

We discussed partial clone today during the contributor's summit. There 
were some concerns about some commands that would cause over-hydration 
of blobs that need server requests to resolve.

GVFS blocks "fsck", "gc", "prune", "repack", "submodule", and "worktree" 
[1]. I promised I would include this list. There are a few limitations 
on the arguments of the other commands, as seen in that code. These 
commands that are blocked are already handled in partial clone with the 
"promisor" pattern. The "worktree" limitation is only due to the 
file-system virtualization layer of GVFS.

We discussed commands like "git grep" that sometimes look at the working 
directory and sometimes crawls trees. That is a command that should be 
considered for batching object downloads, limiting the command to 
"hydrated" blobs, or limiting to a sparse checkout.

Thanks,

-Stolee

[1] 
https://github.com/Microsoft/GVFS/blob/2db0c030eb257beebf8e17f1c2ce72ffb166f533/GVFS/GVFS.Hooks/Program.cs#L120-L137
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help