From: Nguyễn Thái Ngọc Duy Date: Wed, 16 May 2012 12:29:34 GMT Subject: [PATCH v2 2/5] index-pack: perform automatic gc, share receive.gc config with receive-pack Message-ID: <1337171377-26960-3-git-send-email-pclouds@gmail.com> In-Reply-To: <1337171377-26960-1-git-send-email-pclouds@gmail.com> Signed-off-by: Nguyễn Thái Ngọc Duy --- Documentation/config.txt | 7 ++++--- builtin/index-pack.c | 6 ++++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index 915cb5a..3b6d773 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -1754,9 +1754,10 @@ rebase.autosquash:: If set to true enable '--autosquash' option by default. receive.autogc:: - By default, git-receive-pack will run "git-gc --auto" after - receiving data from git-push and updating refs. You can stop - it by setting this variable to false. + By default, git-receive-pack and git-index-pack will run + "git-gc --auto" after receiving data from git-push and + updating refs. You can stop it by setting this variable to + false. receive.fsckObjects:: If it is set to true, git-receive-pack will check all received diff --git a/builtin/index-pack.c b/builtin/index-pack.c index dc2cfe6..4e888ea 100644 --- a/builtin/index-pack.c +++ b/builtin/index-pack.c @@ -10,6 +10,7 @@ #include "fsck.h" #include "exec_cmd.h" #include "thread-utils.h" +#include "gc.h" static const char index_pack_usage[] = "git index-pack [-v] [-o ] [--keep | --keep=] [--verify] [--strict] ( | --stdin [--fix-thin] [])"; @@ -1463,12 +1464,13 @@ int cmd_index_pack(int argc, const char **argv, const char *prefix) curr_index = write_idx_file(index_name, idx_objects, nr_objects, &opts, pack_sha1); free(idx_objects); - if (!verify) + if (!verify) { final(pack_name, curr_pack, index_name, curr_index, keep_name, keep_msg, pack_sha1); - else + gc("receive.autogc", 0); + } else close(input_fd); free(objects); free(index_name_buf); -- 1.7.8.36.g69ee2