If I create a new hook script in my local repository in repo/.git/hooks/post-commit and then I run "git push" are the hooks pushed to the remote? Then, when the other developers run "git pull" from the same origin will they get my new hooks?
No. Hooks are per-repository and are never pushed. Similarly, the repo config isn't pushed either, nor is anything in .git/info
, or a number of other things.
Pushing and pulling only exchanges branches/tags and commit objects (and anything reachable from a commit, e.g. trees, blobs).
No, git hooks are not pushed or pulled, as they are not part of the repository code.
Please refer to the documentation for a list of simple client-side and server-side hooks.
If you want to enable some hooks for all clients that clone or pull from a given repository, you have to add the hooks to your codebase and then create your own script to copy them into, or link to them from repo/.git/hooks/
.
来源:https://stackoverflow.com/questions/12222186/are-git-hooks-pushed-to-the-remote-when-i-git-push