Re: [GSoC] extensions.partialClone and promisor remote fetch order
- From
Lorenzo Pegorari <lorenzo.pegorari2002@gmail.com>
- Date
- Mar 7, 2026, 14:58 UTC
- Message-ID
- <aaw8_U0hOEag4WDO@lorenzo-VM>
- In-Reply-To
- <aavvwfZllMWUwIl3@lorenzo-VM>
On Sat, Mar 07, 2026 at 10:28:33AM +0100, Lorenzo Pegorari wrote:
Show 30 quoted lines
> Hi everyone. In the past weeks I deeply studied the documentation > regarding the GSoC'26 idea "Implement promisor remote fetch ordering". I > am preparing a proposal that is as detailed as possible, and that tries > to answer to as many questions as possible. I am also experimenting a > lot with multiple promisor remotes configurations, and creating some > examples that I will showcase in my proposal. > > > I have a question regarding the interaction between the config > "extensions.partialClone" and a possible fetch ordering mechanism: > * from my understanding, and from my personal tests, it looks like > "extensions.partialClone" is not essential when working with multiple > promisor remotes. Having these promisor remotes setted up with > "remote.<name>.promisor" and "remote.<name>.partialCloneFilter" seems > sufficient. In this case, the promisor remotes will be tried one > after the other, in the order in which they appear in the config. > * if "extensions.partialClone" is present, then the promisor remote > configured using the "extensions.partialClone" config var will be the > last one tried when fetching an object. > > 1. is what I explained correct? > 2. when the fetch ordering mechanism will be added, this config var will > not be useful anymore. How should it be handled? It probably can't > just be removed, so the fetch ordering mechanism should be flexible > enough to handle a situation where "extensions.partialClone" is > present, correct? > > > Thanks, > Lorenzo
Also, I see that "extensions.partialClone" is already necessary "to prevent older versions of git from failing mid-operation because of missing objects that they cannot handle".
This is one of the last issues that I still have to iron out before I can send a satisfactory proposal draft.
[1]: https://git-scm.com/docs/git-config#Documentation/git-config.txt-partialClone [2]: https://git-scm.com/docs/git-config#Documentation/git-config.txt-partialClone