Add support for many promisor remotes
Problem to solve
Promisor packfiles allow a Git repository be used without storing all Git objects locally by promising to Git that the objects are available from the promisor remote. Currently only one promisor remote is supported, which is the primary Git repository.
When using partial clone to allow large files natively in Git, this is not ideal because it means that the large objects all need to be on the primary Git remote, and additionally must be transferred by SSH. This is problematic since a Git hosting service would want to start large files in object storage, like they do currently for Git LFS objects.
Further details
Having multiple promisor remotes is also important for maintaining the decentralized nature of Git strong, and there are many useful applications, like having promisor remotes for different servers all over the world so that large files can be fetched from a CDN nearby, rather than from one location.
Proposal
Git should support multiple promisor remotes
- [PATCH v6 00/15] Many promisor remotes
- [PATCH v5 00/16] Many promisor remotes
- [PATCH v4 00/11] Many promisor remotes
- [PATCH v3 00/11] Many promisor remotes
- V2: https://public-inbox.org/git/20190122144212.15119-1-chriscool@tuxfamily.org/
- V1: https://public-inbox.org/git/20181211052746.16218-1-chriscool@tuxfamily.org/