]> git.ipfire.org Git - thirdparty/git.git/commit
Merge branch 'ps/ref-peeled-tags'
authorJunio C Hamano <gitster@pobox.com>
Wed, 19 Nov 2025 18:55:39 +0000 (10:55 -0800)
committerJunio C Hamano <gitster@pobox.com>
Wed, 19 Nov 2025 18:55:39 +0000 (10:55 -0800)
commit13134cecb08604fc2a4d30b6f9f941f6323e6de2
tree09662dd0be0a1befe13e1f63e511704f175400b8
parent7a75e549b29cfe7b4f0279625298649a28edc110
parent61ac8ba0f034b61d7353a799fecae9fe45137a72
Merge branch 'ps/ref-peeled-tags'

Some ref backend storage can hold not just the object name of an
annotated tag, but the object name of the object the tag points at.
The code to handle this information has been streamlined.

* ps/ref-peeled-tags:
  t7004: do not chdir around in the main process
  ref-filter: fix stale parsed objects
  ref-filter: parse objects on demand
  ref-filter: detect broken tags when dereferencing them
  refs: don't store peeled object IDs for invalid tags
  object: add flag to `peel_object()` to verify object type
  refs: drop infrastructure to peel via iterators
  refs: drop `current_ref_iter` hack
  builtin/show-ref: convert to use `reference_get_peeled_oid()`
  ref-filter: propagate peeled object ID
  upload-pack: convert to use `reference_get_peeled_oid()`
  refs: expose peeled object ID via the iterator
  refs: refactor reference status flags
  refs: fully reset `struct ref_iterator::ref` on iteration
  refs: introduce `.ref` field for the base iterator
  refs: introduce wrapper struct for `each_ref_fn`
12 files changed:
builtin/bisect.c
builtin/fsck.c
builtin/gc.c
builtin/pack-objects.c
builtin/rev-parse.c
http-backend.c
object-name.c
object.h
refs/debug.c
refs/files-backend.c
refs/reftable-backend.c
server-info.c