]> git.ipfire.org Git - thirdparty/git.git/commit
Merge branch 'ps/odb-pluggable-housekeeping' into jch
authorJunio C Hamano <gitster@pobox.com>
Fri, 31 Jul 2026 15:54:04 +0000 (08:54 -0700)
committerJunio C Hamano <gitster@pobox.com>
Fri, 31 Jul 2026 15:54:04 +0000 (08:54 -0700)
commitb30e4a85bb3252343edaa52f85eeffae4a5dc64f
tree75c11863f83ea5c604bfcca975971f95beeda140
parentf69b0d4f8afbabbc60a9455b475a0ab57734d41b
parent56f3fc9520a52a43aef2cabaf30b71a79c9eca57
Merge branch 'ps/odb-pluggable-housekeeping' into jch

Object database housekeeping in 'git gc' and 'git maintenance' has
been refactored to be pluggable.  The files-backend-specific logic,
including incremental and geometric repacking as well as object
pruning, has been moved out of the command implementation and into the
files object database source, enabling future alternative object
database backends to implement their own housekeeping services.

* ps/odb-pluggable-housekeeping:
  odb: make optimizations pluggable
  builtin/gc: fix signedness issues in ODB-related functionality
  builtin/gc: refactor ODB optimizations to operate on "files" source
  builtin/gc: introduce `odb_optimize_required()`
  builtin/gc: move geometric repacking into `odb_optimize()`
  builtin/gc: introduce object database optimization options
  builtin/gc: inline config values specific to the "files" backend
  builtin/gc: make repack arguments self-contained
  builtin/gc: extract object database optimizations into separate function
  builtin/gc: move worktree and rerere tasks before object optimizations
  odb: run "pre-auto-gc" hook for all maintenance tasks
  t7900: simplify how we check for maintenance tasks
builtin/gc.c
odb.c
odb.h
odb/source-files.c
odb/source.h
t/t7900-maintenance.sh