If such a hook is available and exits with a non-zero status, then
git-gc --auto won't run.
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
---
builtin-gc.c | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/builtin-gc.c b/builtin-gc.c
index 8cef36f..acd63be 100644
--- a/builtin-gc.c
+++ b/builtin-gc.c
@@ -157,6 +157,25 @@ static int too_many_packs(void)
return gc_auto_pack_limit <= cnt;
}
+static int run_hook()
+{
+ const char *argv[2];
+ struct child_process hook;
+
+ argv[0] = git_path("hooks/pre-auto-gc");
+ argv[1] = NULL;
+
+ if (access(argv[0], X_OK) < 0)
+ return 0;
+
+ memset(&hook, 0, sizeof(hook));
+ hook.argv = argv;
+ hook.no_stdin = 1;
+ hook.stdout_to_stderr = 1;
+
+ return run_command(&hook);
+}
+
static int need_to_gc(void)
{
/*
@@ -176,6 +195,9 @@ static int need_to_gc(void)
append_option(argv_repack, "-A", MAX_ADD);
else if (!too_many_loose_objects())
return 0;
+
+ if (run_hook())
+ return 0;
return 1;
}
--
1.5.5.rc2.4.g283c6
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html| Max Krasnyansky | Re: Inquiry: Should we remove "isolcpus= kernel boot option? (may have realtime us... |
| Jeremy Allison | Re: [RFC] Heads up on sys_fallocate() |
| Randy Dunlap | Re: -mm merge plans for 2.6.23 (pcmcia) |
| Damien Wyart | ACPI power off regression in 2.6.23-rc8 (NOT in rc7) |
git: | |
| Josip Rodin | Re: bnx2_poll panicking kernel |
| Linus Torvalds | Re: [GIT]: Networking |
| Denys Fedoryshchenko | thousands of classes, e1000 TX unit hang |
