]> git.ipfire.org Git - thirdparty/git.git/commit
path-walk: mark trees and blobs as UNINTERESTING
authorDerrick Stolee <stolee@gmail.com>
Fri, 20 Dec 2024 16:21:14 +0000 (16:21 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 20 Dec 2024 16:37:05 +0000 (08:37 -0800)
commit6333e7ae0bb1027b3299d482be5a4a0937116ab0
tree03c2d9ed3180a5215c8f4a59ecc3090f9c7731ee
parent9145660979d699733e05d7336eabb086b5266370
path-walk: mark trees and blobs as UNINTERESTING

When the input rev_info has UNINTERESTING starting points, we want to be
sure that the UNINTERESTING flag is passed appropriately through the
objects. To match how this is done in places such as 'git pack-objects', we
use the mark_edges_uninteresting() method.

This method has an option for using the "sparse" walk, which is similar in
spirit to the path-walk API's walk. To be sure to keep it independent, add a
new 'prune_all_uninteresting' option to the path_walk_info struct.

To check how the UNINTERSTING flag is spread through our objects, extend the
'test-tool path-walk' command to output whether or not an object has that
flag. This changes our tests significantly, including the removal of some
objects that were previously visited due to the incomplete implementation.

Signed-off-by: Derrick Stolee <stolee@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/technical/api-path-walk.txt
path-walk.c
path-walk.h
t/helper/test-path-walk.c
t/t6601-path-walk.sh