diff options
author | Junio C Hamano <gitster@pobox.com> | 2015-11-03 23:32:25 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-11-03 23:32:25 (GMT) |
commit | f89baca1b99ff2882690d6b58dc2071195c6ae84 (patch) | |
tree | 2901be0d9c8d2b46710fe97681b66b116127fd96 /builtin/gc.c | |
parent | b05c2f9ed48adfd9670b28ecdd5c55a4e4698704 (diff) | |
parent | 067fbd4105c5aa8260a73cc6961854be0e93fa03 (diff) | |
download | git-f89baca1b99ff2882690d6b58dc2071195c6ae84.zip git-f89baca1b99ff2882690d6b58dc2071195c6ae84.tar.gz git-f89baca1b99ff2882690d6b58dc2071195c6ae84.tar.bz2 |
Merge branch 'jk/repository-extension' into maint
Prepare for Git on-disk repository representation to undergo
backward incompatible changes by introducing a new repository
format version "1", with an extension mechanism.
* jk/repository-extension:
introduce "preciousObjects" repository extension
introduce "extensions" form of core.repositoryformatversion
Diffstat (limited to 'builtin/gc.c')
-rw-r--r-- | builtin/gc.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/builtin/gc.c b/builtin/gc.c index 0ad8d30..b757d9a 100644 --- a/builtin/gc.c +++ b/builtin/gc.c @@ -340,15 +340,17 @@ int cmd_gc(int argc, const char **argv, const char *prefix) if (gc_before_repack()) return -1; - if (run_command_v_opt(repack.argv, RUN_GIT_CMD)) - return error(FAILED_RUN, repack.argv[0]); - - if (prune_expire) { - argv_array_push(&prune, prune_expire); - if (quiet) - argv_array_push(&prune, "--no-progress"); - if (run_command_v_opt(prune.argv, RUN_GIT_CMD)) - return error(FAILED_RUN, prune.argv[0]); + if (!repository_format_precious_objects) { + if (run_command_v_opt(repack.argv, RUN_GIT_CMD)) + return error(FAILED_RUN, repack.argv[0]); + + if (prune_expire) { + argv_array_push(&prune, prune_expire); + if (quiet) + argv_array_push(&prune, "--no-progress"); + if (run_command_v_opt(prune.argv, RUN_GIT_CMD)) + return error(FAILED_RUN, prune.argv[0]); + } } if (prune_worktrees_expire) { |