2014-09-22 198 views
1

如何在本地为每个提交设置电子邮件通知或推送到git服务器? 详细描述: 我想触发邮件到用户组,每次推送到服务器。Git电子邮件通知

+0

你看过[git hooks](http://git-scm.com/book/en/Customizing-Git-Git-Hooks)吗? – 2014-09-22 10:12:09

+0

@Zeeker我没有得到你。我会在哪里找到git挂钩? – Abhishek 2014-09-22 14:06:40

+0

你看过我提供的链接吗? – 2014-09-22 14:07:17

回答

0

构建一个脚本来创建和发送电子邮件。我用过this。将脚本放在本地post-commit挂钩(在每次提交时发送电子邮件通知)和远程post-receive hook(每次推送时发送电子邮件通知)。

不要忘记将post-receive.sample重命名为post-receive,并且与post-commit相同!

Happy Gitting!

+0

我检查了我的.git/hooks目录,但在我的钩子中,我没有任何post-commit.sample或post-receive.sample文件。 那么我需要创建新文件还是需要安装一些软件包? – Abhishek 2014-09-22 14:49:34

+0

是的!你可以通过名称'post-receive'和'post-commit'创建一个shell脚本。 你使用哪个版本的Git btw? – 2014-09-22 14:52:53

+0

git版本1.9.4 – Abhishek 2014-09-22 14:58:59

0

你可以把下面的代码放在post-commit和post-receive hook中。

while read mailadd 
do 
    echo "This is a test mail" | mail ${mailadd} -s "test mail" -a file.txt 
done < mailids.txt 

mailids.txt是将具有邮件ID的文件。 (一行中有一个ID)。

回声“这是一个测试邮件”这样的电子邮件正文 -s“测试邮件”:这是受 -a file.txt的:对于发送任何文件作为附件