X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=Documentation%2Fhooks.txt;h=c39edc57c4452091e2f313cb8d5cfa9d51a4b27b;hb=dc3e3ea3c838c1ddf7423401b4cf7a7dba528cff;hp=80ba6709ad8759ec6f3f8ed63b804ff6a901c111;hpb=667152528df417627e54de6cb281a63a727369af;p=git.git diff --git a/Documentation/hooks.txt b/Documentation/hooks.txt index 80ba6709a..c39edc57c 100644 --- a/Documentation/hooks.txt +++ b/Documentation/hooks.txt @@ -12,11 +12,10 @@ This document describes the currently defined hooks. applypatch-msg -------------- -This hook is invoked by `git-applypatch` script, which is -typically invoked by `git-applymbox`. It takes a single +This hook is invoked by `git-am` script. It takes a single parameter, the name of the file that holds the proposed commit log message. Exiting with non-zero status causes -`git-applypatch` to abort before applying the patch. +`git-am` to abort before applying the patch. The hook is allowed to edit the message file in place, and can be used to normalize the message into some project standard @@ -29,8 +28,7 @@ The default 'applypatch-msg' hook, when enabled, runs the pre-applypatch -------------- -This hook is invoked by `git-applypatch` script, which is -typically invoked by `git-applymbox`. It takes no parameter, +This hook is invoked by `git-am`. It takes no parameter, and is invoked after the patch is applied, but before a commit is made. Exiting with non-zero status causes the working tree after application of the patch not committed. @@ -44,12 +42,11 @@ The default 'pre-applypatch' hook, when enabled, runs the post-applypatch --------------- -This hook is invoked by `git-applypatch` script, which is -typically invoked by `git-applymbox`. It takes no parameter, +This hook is invoked by `git-am`. It takes no parameter, and is invoked after the patch is applied and a commit is made. This hook is meant primarily for notification, and cannot affect -the outcome of `git-applypatch`. +the outcome of `git-am`. pre-commit ---------- @@ -115,8 +112,9 @@ If the hook exits with non-zero status, none of the refs will be updated. If the hook exits with zero, updating of individual refs can still be prevented by the <> hook. -If you want to report something to the `git-send-pack` on the other end, -you can simply `echo` your messages. +Both standard output and standard error output are forwarded to +`git-send-pack` on the other end, so you can simply `echo` messages +for the user. [[update]] update @@ -153,9 +151,9 @@ Another use suggested on the mailing list is to use this hook to implement access control which is finer grained than the one based on filesystem group. -The standard output of this hook is sent to `stderr`, so if you -want to report something to the `git-send-pack` on the other end, -you can simply `echo` your messages. +Both standard output and standard error output are forwarded to +`git-send-pack` on the other end, so you can simply `echo` messages +for the user. The default 'update' hook, when enabled--and with `hooks.allowunannotated` config option turned on--prevents @@ -171,17 +169,20 @@ It executes on the remote repository once after all the refs have been updated. This hook executes once for the receive operation. It takes no -arguments, but gets the same information as the `pre-receive` +arguments, but gets the same information as the +<> hook does on its standard input. This hook does not affect the outcome of `git-receive-pack`, as it is called after the real work is done. -This supersedes the [[post-update]] hook in that it actually get's -both old and new values of all the refs. +This supersedes the <> hook in that it gets +both old and new values of all the refs in addition to their +names. -If you want to report something to the `git-send-pack` on the -other end, you can simply `echo` your messages. +Both standard output and standard error output are forwarded to +`git-send-pack` on the other end, so you can simply `echo` messages +for the user. The default 'post-receive' hook is empty, but there is a sample script `post-receive-email` provided in the `contrib/hooks` @@ -205,12 +206,10 @@ the outcome of `git-receive-pack`. The 'post-update' hook can tell what are the heads that were pushed, but it does not know what their original and updated values are, -so it is a poor place to do log old..new. - -In general, `post-receive` hook is preferred when the hook needs -to decide its acion on the status of the entire set of refs -being updated, as this hook is called once per ref, with -information only on a single ref at a time. +so it is a poor place to do log old..new. The +<> hook does get both original and +updated values of the refs. You might consider it instead if you need +them. When enabled, the default 'post-update' hook runs `git-update-server-info` to keep the information used by dumb @@ -219,4 +218,5 @@ a git repository that is accessible via HTTP, you should probably enable this hook. Both standard output and standard error output are forwarded to -`git-send-pack` on the other end. +`git-send-pack` on the other end, so you can simply `echo` messages +for the user.