summaryrefslogtreecommitdiff
path: root/builtin/receive-pack.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2022-02-09 14:21:00 -0800
committerJunio C Hamano <gitster@pobox.com>2022-02-09 14:21:00 -0800
commitc70bc338e9a35b45263c3c68913ad516e9e70d62 (patch)
treed44d22a30a76b1f825d7b14e36b1e874ba24a922 /builtin/receive-pack.c
parentbd75856ef73adce98f2492ea1534f178e93c6785 (diff)
parent95ba86a203213fb828de096dc0dba18ce94598f7 (diff)
downloadgit-c70bc338e9a35b45263c3c68913ad516e9e70d62.tar.gz
Merge branch 'ab/config-based-hooks-2'
More "config-based hooks". * ab/config-based-hooks-2: run-command: remove old run_hook_{le,ve}() hook API receive-pack: convert push-to-checkout hook to hook.h read-cache: convert post-index-change to use hook.h commit: convert {pre-commit,prepare-commit-msg} hook to hook.h git-p4: use 'git hook' to run hooks send-email: use 'git hook run' for 'sendemail-validate' git hook run: add an --ignore-missing flag hooks: convert worktree 'post-checkout' hook to hook library hooks: convert non-worktree 'post-checkout' hook to hook library merge: convert post-merge to use hook.h am: convert applypatch-msg to use hook.h rebase: convert pre-rebase to use hook.h hook API: add a run_hooks_l() wrapper am: convert {pre,post}-applypatch to use hook.h gc: use hook library for pre-auto-gc hook hook API: add a run_hooks() wrapper hook: add 'run' subcommand
Diffstat (limited to 'builtin/receive-pack.c')
-rw-r--r--builtin/receive-pack.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c
index 5c2732a0d0..c427ca09aa 100644
--- a/builtin/receive-pack.c
+++ b/builtin/receive-pack.c
@@ -1411,9 +1411,12 @@ static const char *push_to_checkout(unsigned char *hash,
struct strvec *env,
const char *work_tree)
{
+ struct run_hooks_opt opt = RUN_HOOKS_OPT_INIT;
+
strvec_pushf(env, "GIT_WORK_TREE=%s", absolute_path(work_tree));
- if (run_hook_le(env->v, push_to_checkout_hook,
- hash_to_hex(hash), NULL))
+ strvec_pushv(&opt.env, env->v);
+ strvec_push(&opt.args, hash_to_hex(hash));
+ if (run_hooks_opt(push_to_checkout_hook, &opt))
return "push-to-checkout hook declined";
else
return NULL;