From 48c3242450fe5fb18e6890812c000ed5c6291a98 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 27 Dec 2006 01:24:05 -0800 Subject: rerere gc: honor configuration and document it Two configuration to control the expiration of rerere records are introduced and documented. Signed-off-by: Junio C Hamano --- builtin-rerere.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'builtin-rerere.c') diff --git a/builtin-rerere.c b/builtin-rerere.c index d064bd8bf0..7442498dee 100644 --- a/builtin-rerere.c +++ b/builtin-rerere.c @@ -362,6 +362,17 @@ tail_optimization: return write_rr(rr, fd); } +static int git_rerere_config(const char *var, const char *value) +{ + if (!strcmp(var, "gc.rerereresolved")) + cutoff_resolve = git_config_int(var, value); + else if (!strcmp(var, "gc.rerereunresolved")) + cutoff_noresolve = git_config_int(var, value); + else + return git_default_config(var, value); + return 0; +} + int cmd_rerere(int argc, const char **argv, const char *prefix) { struct path_list merge_rr = { NULL, 0, 0, 1 }; @@ -371,6 +382,8 @@ int cmd_rerere(int argc, const char **argv, const char *prefix) if (stat(git_path("rr-cache"), &st) || !S_ISDIR(st.st_mode)) return 0; + git_config(git_rerere_config); + merge_rr_path = xstrdup(git_path("rr-cache/MERGE_RR")); fd = hold_lock_file_for_update(&write_lock, merge_rr_path, 1); read_rr(&merge_rr); -- cgit v1.2.3