]> git.ipfire.org Git - thirdparty/git.git/commit
pack-objects: enable --path-walk via config
authorDerrick Stolee <stolee@gmail.com>
Fri, 16 May 2025 18:11:58 +0000 (18:11 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 16 May 2025 19:15:39 +0000 (12:15 -0700)
commit4f7f57120428c0dfcbda85bc8afcd4d1740139dd
treed1ea50b73982c07d9e2d57c1af97283d76c18031
parent5f711504d9540ef5c8ca4c9d43e6f5a1d0259d3c
pack-objects: enable --path-walk via config

Users may want to enable the --path-walk option for 'git pack-objects' by
default, especially underneath commands like 'git push' or 'git repack'.

This should be limited to client repositories, since the --path-walk option
disables bitmap walks, so would be bad to include in Git servers when
serving fetches and clones. There is potential that it may be helpful to
consider when repacking the repository, to take advantage of improved deltas
across historical versions of the same files.

Much like how "pack.useSparse" was introduced and included in
"feature.experimental" before being enabled by default, use the repository
settings infrastructure to make the new "pack.usePathWalk" config enabled by
"feature.experimental" and "feature.manyFiles".

In order to test that this config works, add a new trace2 region around
the path walk code that can be checked by a 'git push' command.

Signed-off-by: Derrick Stolee <stolee@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/config/feature.adoc
Documentation/config/pack.adoc
builtin/pack-objects.c
repo-settings.c
repo-settings.h
t/t5516-fetch-push.sh