Subject: Re: [PATCH 1/3] builtin/repack: fix geometric repacks with promisor remotes

From: Patrick Steinhardt <[email-masked]>
Date: Thu, 11 Dec 2025 06:46:57 +0100

On Wed, Dec 10, 2025 at 01:31:44PM -0600, Justin Tobler wrote:
> 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