Re: [PATCH 1/3] builtin/repack: fix geometric repacks with promisor remotes
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Dec 11, 2025, 05:46 UTC
- Message-ID
- <aTpa0XLKPL53LaR-@pks.im>
- In-Reply-To
- <pva24p5jl2wjnwtdysmiqy4ljcfxtarss2cudqf5k7so36c5b3@6xkb6o2tgx5j>
On Wed, Dec 10, 2025 at 01:31:44PM -0600, Justin Tobler wrote:
Show 17 quoted lines
> On 25/12/05 09:19AM, Patrick Steinhardt wrote: > > But there is one case where git-repack(1) decides to pass both options: > > when performing a geometric repack we always pass "--stdin-packs" to > > identify the packs that should be merged. So if one performs a geometric > > repack in a partial clone we'll end up with both options, and that > > causes the repack to fail. > > > > Fix this issue by never passing "--exclude-promisor-objects" when we > > have a geometric split factor. We don't need the option anyway when > > doing a geometric repack as we will only ever pack loose objects or > > merge multiple packs. And neither of those cases can yield a promisor > > object. > > I'm not sure I fully understand why --exclude-promisor-objects would not > be needed for geometric repacks. To clarify, do geometric repacks > already exclude promisor packfiles when merging? If so, then this change > makes sense.
Okay, I had a deeper look now, and turns out my claim was completely wrong. We _do_ try to perform geometric repacking with promisor remotes, but we don't know to handle them in any capacity:
- git-pack-objects(1) just dies right away.
- Even if it didn't, we would need to learn how to merge promisor
packs.I'll drop this patch for now, thanks for prompting!
Patrick