Post-receive hooks fire after the push has been received and accepted. They are useful for providing a message to the client.
A typical usage of post-receive hooks is for passing information to a downstream process… for example:
triggering a build in your Continuous Integration system.
posting a message on your internal messaging system, eg HipChat, Slack, Lync.
sending mail, for instance when a branch has been created or merged.
You can combine these with conditions, for instance only posting on IM when there is a new commit on a release branch, or a new tag has been created.
If you don’t need to output a message to the client, it may be easier to listen for a
Adding a Post-Receive Hook
Navigate to Admin → Script Post Hooks. Click a heading to add a hook. Choose Custom Post-Hook to use your own scripts to respond to pushes.