Skip to content
  • Jeff King's avatar
    pack-bitmap: save "have" bitmap from walk · 30cdc33f
    Jeff King authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    When we do a bitmap walk, we save the result, which
    represents (WANTs & ~HAVEs); i.e., every object we care
    about visiting in our walk. However, we throw away the
    haves bitmap, which can sometimes be useful, too. Save it
    and provide an access function so code which has performed a
    walk can query it.
    
    A few notes on the accessor interface:
    
     - the bitmap code calls these "haves" because it grew out
       of the want/have negotiation for fetches. But really,
       these are simply the objects that would be flagged
       UNINTERESTING in a regular traversal. Let's use that
       more universal nomenclature for the external module
       interface. We may want to change the internal naming
       inside the bitmap code, but that's outside the scope of
       this patch.
    
     - it still uses a bare "sha1" rather than "oid". That's
       true of all of the bitmap code. And in this particular
       instance, our caller in pack-objects is dealing with the
       bare sha1 that comes from a packed REF_DELTA (we're
       pointing directly to the mmap'd pack on disk). That's
       something we'll have to deal with as we transition to a
       new hash, but we can wait and see how the caller ends up
       being fixed and adjust this interface accordingly.
    
    Signed-off-by: default avatarJeff King <peff@peff.net>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    30cdc33f