On 12/4/2018 2:06 AM, Jeff King wrote:
On Thu, Nov 29, 2018 at 10:55:49AM -0800, Stefan Beller wrote:
I view alternates as a historic artefact as the deduping
of objects client side can be done using worktrees, and on the
serverside - I think - most of the git hosters use namespaces
and put a fork network into the same repository and use pack islands.
By contrast, object storage is pretty easy to share. It scales
reasonably well, and the security model is much simpler due to the
immutable nature of object names.
And for the client side, we use alternates as an important way to scale
VFS for Git to multiple enlistments on the same machine. VFS for Git
manages a "shared object cache" (the alternate) that is updated in the
background (including multi-pack-index and commit-graph).
Using worktrees for the same effect would add complications to the user
interactions, not only when creating an enlistment but the fact that two
enlistments cannot check out the same ref will confuse users.
Thanks,
-Stolee