Gerrit has its own email-sending system, but you may prefer using
git-multimail
instead. It supports Gerrit natively as a Gerrit
ref-updated
hook (Warning: Gerrit hooks
are distinct from Git hooks). Setting up git-multimail
on a Gerrit
installation can be done following the instructions below.
The explanations show an easy way to set up git-multimail
,
but leave git-multimail
installed and unconfigured for a while. If
you run Gerrit on a production server, it is advised that you
execute the step "Set up the hook" last to avoid confusing your users
in the meantime.
Create a directory $site_path/hooks/
if it does not exist (if you
don't know what $site_path
is, run gerrit.sh status
and look
for a GERRIT_SITE
line). Either copy git_multimail.py
to
$site_path/hooks/ref-updated
or create a wrapper script like
this:
#! /bin/sh exec /path/to/git_multimail.py "$@"
In both cases, make sure the file is named exactly
$site_path/hooks/ref-updated
and is executable.
(Alternatively, you may configure the [hooks]
section of
gerrit.config)
Log on the gerrit server and edit $site_path/git/$project/config
to configure git-multimail
.
Warning: this will disable git-multimail
during the debug, and
could confuse your users. Don't run on a production server.
To debug configuration issues with git-multimail
, you can add the
--stdout
option when calling git_multimail.py
like this:
#!/bin/sh exec /path/to/git-multimail/git-multimail/git_multimail.py \ --stdout "$@" >> /tmp/log.txt
and try pushing from a test repository. You should see the source of
the email that would have been sent in the output of git push
in
the file /tmp/log.txt
.