Re: [PATCH v6 5/9] pack-objects: perform name-hash traversal for unpacked objects
- From
Taylor Blau <me@ttaylorr.com>
- Date
- Jun 24, 2025, 16:08 UTC
- Message-ID
- <aFrNauEk9vRq27+t@nand.local>
- In-Reply-To
- <xmqqikkm3vki.fsf@gitster.g>
On Mon, Jun 23, 2025 at 04:08:29PM -0700, Junio C Hamano wrote:
Show 11 quoted lines
> Taylor Blau <me@ttaylorr.com> writes: > > > Now that the 'rev_info' struct is declared outside of > > `read_packs_list_from_stdin()`, we can pass it to > > `add_objects_in_unpacked_packs()` and add any loose objects as tips to > > the above-mentioned traversal, in theory producing slightly tighter > > packs as a result. > > So the idea is to pretend any and all loose commits as if they are > at the tip of branches? By doing so, we ensure each of the tree and > blob objects contained in them has a reasonable path-from-the-root?
That's right. We had previously only considered commit objects in the pack(s) being combined as possible traversal tips, but this change causes us to do the same for loose commit objects as well.
I do kind of wonder how much of a difference this makes on delta quality overall, and suspect that it is highly workflow-specific and likely very difficult to measure in general.
Thanks, Taylor