diff options
author | Junio C Hamano <junkio@cox.net> | 2006-12-27 01:24:05 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-12-27 01:33:24 -0800 |
commit | 48c3242450fe5fb18e6890812c000ed5c6291a98 (patch) | |
tree | b8325ffabcccbdc389395e1b6e828c77d1029362 /builtin-rerere.c | |
parent | ae72f685418b79bbd67e1017c5b1ac7d731c042e (diff) | |
download | git-48c3242450fe5fb18e6890812c000ed5c6291a98.tar.gz |
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 <junkio@cox.net>
Diffstat (limited to 'builtin-rerere.c')
-rw-r--r-- | builtin-rerere.c | 13 |
1 files changed, 13 insertions, 0 deletions
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); |