I used git server to manage my projects for a long time. It is so good so that I want to use it in a big environment. Now many people will join to the projects. Thus, I have to turn on the mail notice function to notify the members when a change has beendone on the projects. By default, git server uses sendmail to send mails.
$ sudo apt-get install sendmail
Then I configured the project as following:
repo testing
config hooks.mailinglist = members@domain.com
config hooks.announcelist = members@domain.com
config hooks.envelopesender = gitserver@domain.com
RW+CD = @admin
- refs/tags/v[0-9] = @all
RWC refs/tags/ = @all
RW master = @all
RW+CD refs/heads/u/USER/ = @all
Pleae note, if you don't set hooks.envelopesender, maybe some of the mail list memebers can't receive the mails.
When I push the commit, it will take a long time, more two minutes to finish pushing. Then I found the issue was caused by sendmail. And I execute "cat /var/log/mail.err", it shows the following message:
Aug 6 11:22:43 T420i sendmail[4366]: unable to qualify my own domain name (localhost) -- using short name
Aug 6 11:23:58 T420i sendmail[4572]: My unqualified host name (localhost) unknown; sleeping for retry
So I opened the /etc/hosts file with "sudo vi /etc/hosts" command.
changed
127.0.0.1 localhost
into
127.0.0.1 localhost.org localhost
Then I tried to push a new commit again. It works and fast to finish pushing.