Merge branch 'tb/enable-cruft-packs-by-default'
When "gc" needs to retain unreachable objects, packing them into cruft packs (instead of exploding them into loose object files) has been offered as a more efficient option for some time. Now the use of cruft packs has been made the default and no longer considered an experimental feature. * tb/enable-cruft-packs-by-default: repository.h: drop unused `gc_cruft_packs` builtin/gc.c: make `gc.cruftPacks` enabled by default t/t9300-fast-import.sh: prepare for `gc --cruft` by default t/t6500-gc.sh: add additional test cases t/t6500-gc.sh: refactor cruft pack tests t/t6501-freshen-objects.sh: prepare for `gc --cruft` by default t/t5304-prune.sh: prepare for `gc --cruft` by default builtin/gc.c: ignore cruft packs with `--keep-largest-pack` builtin/repack.c: fix incorrect reference to '-C' pack-write.c: plug a leak in stage_tmp_packfiles()
This commit is contained in:
@ -50,7 +50,7 @@ static const char * const builtin_gc_usage[] = {
|
||||
|
||||
static int pack_refs = 1;
|
||||
static int prune_reflogs = 1;
|
||||
static int cruft_packs = -1;
|
||||
static int cruft_packs = 1;
|
||||
static int aggressive_depth = 50;
|
||||
static int aggressive_window = 250;
|
||||
static int gc_auto_threshold = 6700;
|
||||
@ -221,7 +221,7 @@ static struct packed_git *find_base_packs(struct string_list *packs,
|
||||
struct packed_git *p, *base = NULL;
|
||||
|
||||
for (p = get_all_packs(the_repository); p; p = p->next) {
|
||||
if (!p->pack_local)
|
||||
if (!p->pack_local || p->is_cruft)
|
||||
continue;
|
||||
if (limit) {
|
||||
if (p->pack_size >= limit)
|
||||
@ -610,10 +610,6 @@ int cmd_gc(int argc, const char **argv, const char *prefix)
|
||||
if (prune_expire && parse_expiry_date(prune_expire, &dummy))
|
||||
die(_("failed to parse prune expiry value %s"), prune_expire);
|
||||
|
||||
prepare_repo_settings(the_repository);
|
||||
if (cruft_packs < 0)
|
||||
cruft_packs = the_repository->settings.gc_cruft_packs;
|
||||
|
||||
if (aggressive) {
|
||||
strvec_push(&repack, "-f");
|
||||
if (aggressive_depth > 0)
|
||||
|
Reference in New Issue
Block a user