All of lore.kernel.org
 help / color / mirror / Atom feed
From: Taylor Blau <me@ttaylorr.com>
To: git@vger.kernel.org
Cc: Jeff King <peff@peff.net>, Junio C Hamano <gitster@pobox.com>
Subject: [PATCH 0/2] revision: exclude all packed objects with `--unpacked`
Date: Mon, 6 Nov 2023 17:56:27 -0500	[thread overview]
Message-ID: <cover.1699311386.git.me@ttaylorr.com> (raw)

While working on my longer series to enable verbatim pack reuse across
multiple packs[^1], I noticed a couple of oddities with the `--unpacked`
rev-walk flag.

While it does exclude packed commits, it does not exclude (all) packed
trees/blobs/annotated tags. This problem exists in the pack-bitmap
machinery, too, which will over-count queries like:

    $ git rev-list --use-bitmap-index --all --unpacked --objects

, etc.

The fix is relatively straightforward, split across two patches that
Peff and I worked on together earlier today.

This is technically a backwards-incompatible change, but the existing
behavior is broken and does not match the documented behavior, so I
think in this case we are OK to change --unpacked to faithfully
implement its documentation.

[^1]: Which, I'm very excited to say, is working :-).

Taylor Blau (2):
  list-objects: drop --unpacked non-commit objects from results
  pack-bitmap: drop --unpacked non-commit objects from results

 list-objects.c                     |  3 +++
 pack-bitmap.c                      | 27 +++++++++++++++++++++++++++
 t/t6000-rev-list-misc.sh           | 13 +++++++++++++
 t/t6113-rev-list-bitmap-filters.sh | 13 +++++++++++++
 t/t6115-rev-list-du.sh             |  7 +++++++
 5 files changed, 63 insertions(+)


base-commit: bc5204569f7db44d22477485afd52ea410d83743
-- 
2.43.0.rc0.2.gef6b2154a3

             reply	other threads:[~2023-11-06 22:56 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-06 22:56 Taylor Blau [this message]
2023-11-06 22:56 ` [PATCH 1/2] list-objects: drop --unpacked non-commit objects from results Taylor Blau
2023-11-07  2:21   ` Junio C Hamano
2023-11-07  4:02     ` Jeff King
2023-11-06 22:56 ` [PATCH 2/2] pack-bitmap: " Taylor Blau
2023-11-07  2:20   ` Junio C Hamano
2023-11-07  3:52   ` Jeff King
2023-11-07  1:42 ` [PATCH 0/2] revision: exclude all packed objects with `--unpacked` Junio C Hamano
2023-11-07  4:02 ` Jeff King
2023-11-07  9:43   ` Patrick Steinhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1699311386.git.me@ttaylorr.com \
    --to=me@ttaylorr.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.