您的位置:首页 > 其它

Git 邮件通知设置

2010-11-02 17:27 295 查看
转自 http://xxw8393.blog.163.com/blog/static/3725683420108811953619/ 在团队里面,我们使用Git管理共用代码,可以解决代码更改冲突问题,但还有另外一个问题,我怎么知道别人的工作进展呢?这个时候,就要求我们用一种方式,告诉团队里面的其它人,嘿,伙计们,咱有新代码更新提交进了仓库了。
Git 有一个post-receive挂钩,我们通过对该挂钩进行相关设置,即可实现自动通知功能。当然了,通知是英文的,中文支持还是有点麻烦,现在咱不弄成中文,只要求它能工作就行。
用root账号登入中央仓库(大家共享的那个核心仓库)的SSH,改变当前目录到仓库根目录下面。先设置变量邮件发送目标及发件人地址:邮件发送目标我们设定为咱的团队邮件列表,至于架设团队邮件列表,请自行搜索相关技术文案。
git config hooks.mailinglist "mailist@your.com"
git config hooks.envelopesender "your@your.com"
hooks.mailinglist是目标邮件列表,每次更新会发送通知到这个地址。
hooks.envelopesender是发件人地址,信件是从这个地址发出去的。
输入git config –list命令,查看一下变量是否设置正确。
接下来vim hooks/post-receive
#!/bin/sh
export GIT_DIR="/var/gitbase/main"
. /usr/share/doc/git-core/contrib/hooks/post-receive-email
export GIT_DIR="/var/www/server.domain.com/.git"
cd /var/www/server.domain.com
git pull origin master
git checkout -f

/var/gitbase/main是主仓库,/var/www/server.domain.com是生产目录。
接下来执行一下 chmod a+x /usr/share/doc/git-core/contrib/hooks/post-receive-email
我们的脚本执行了两个操作,一个是发送通知邮件,一个是更新生产服务器目录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: