GIT自动发邮件功能配置
来源:互联网 发布:粘贴软件中联 编辑:程序博客网 时间:2024/05/21 14:03
原来配置过SVN版本控制在项目成员提交CODE的时候,会自动发邮件给团队成员,公司在使用GIT之后,同样有这样需求,如下是配置方法.
GIT的邮件通知是通过MSMTP和MUTT来发信的,所以首先需要配置MSMTP和MUTT环境。
1、 下载安装MSMTP
wget http://cdnetworks-kr-1.dl.sourceforge.net/project/msmtp/msmtp/1.4.24/msmtp-1.4.24.tar.bz2
tar jxvf msmtp-1.4.24.tar.bz2
cd msmtp-1.4.24
./configure --prefix=/usr/local/msmtp
make
make install
ln /usr/local/msmtp/bin/msmtp /bin/msmtp
查看MSMTP的配置文件目录,执行如下命令:
[root@bogon msmtp]# msmtp --version
msmtp version 1.4.24
Platform: x86_64-unknown-linux-gnu
TLS/SSL library: OpenSSL
Authentication library: built-in
Supported authentication methods:
plain cram-md5 external login
IDN support: enabled
NLS: enabled, LOCALEDIR is /usr/local/msmtp/share/locale
Keyring support: none
System configuration file name: /usr/local/msmtp/etc/msmtprc #此为改软件的配置文件路径
User configuration file name: /root/.msmtprc
Copyright (C) 2010 Martin Lambers and others.
This is free software. You may redistribute copies of it under the terms of
the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
There is NO WARRANTY, to the extent permitted by law.
创建目录:
mkdir -p /usr/local/msmtp/etc/
创建配置文件
vi /usr/local/msmtp/etc/msmtprc
defaults
account duhaitao
host mail.ecworld.net
from gitmail@ecworld.net
auth login
user gitmail
password pass
tls off
account default : gitmail
logfile /var/log/msmtp.log
2、 下载安装MUTT
此软件是在系统安装ISO里面找到的,也可以通过网上下载进行安装。
rpm –ihv mutt-1.4.2.2-3.0.2.el5.x86_64.rpm
安装好之后,会在/etc目录下面生成/Muttrc文件,修改/etc/Muttrc文件:
# for add Muttr
set sendmail="/usr/local/msmtp/bin/msmtp"
set realname="Data Report"
set editor="vi"
set from=auto_mail@ecworld.com
set envelope_from=yes
一切就绪之后就可以测试是否成功。
echo 'test'|mutt -s "testabc" duhaitao@sian.com -c duhaitao@ecworld.net -a a.tgz
没有报错,就可以收到邮件了。
3、 Post-receive脚本下载
接下来下载GIT发送邮件脚本。下载地址为:
http://github.com/zma/usefulscripts/blob/master/script/post-receive
GIT的邮件发送是通过HOOKS目录下面的post-receive 实现的,每当有PUSH操作的时候,就会触发此脚本。
下载脚本,并放到$GIT_DIR/hooks/ 目录下面。$GIT_DIR是GIT库的主目录,在把脚本放到HOOKS目录之后,赋予它执行权限。
chmod a+x hooks/post-receive
然后修改GIT库下面的config文件
添加:
[hooks]
sendmail = /bin/msmtp
emailprefix = "[GIT NOTICE]"
showrev = "git show -C %s; echo"
修改$GIT_DIR/description文件,邮件中的标题是这个文件的第一行内容,修改这个文件第一行为你项目的名字。
因为我们使用的是MUTT来发信息的,所以需要修改刚才下载的post-receive脚本。
把705行内容:
cat $email_tmp_file | mailx -S smtp="smtp://smtp.cse.ust.hk" -s "$emailsubject" -r $senderemail $recipients
修改为:
cat $email_tmp_file | mutt -s "$emailsubject" git@ecworld.net
其中git@ecworld.net为一个邮件别名,里面包括了所有开发成员的邮件。
修改完之后,在团队成员进行PUSH的时候,每个人就会收到邮件了,内容如下:
参数文档:
http://fclose.com/b/linux/1473/setting-up-git-commit-email-notification/
http://www.josephj.com/entry.php?id=346
http://www.fwolf.com/blog/post/431
- GIT自动发邮件功能配置
- sql自动发邮件功能
- 实现Git提交后自动邮件通知的功能配置
- 自动调用系统发邮件功能
- java实现后台自动发邮件功能
- java实现后台自动发邮件功能
- android实现后台自动发邮件功能
- java实现后台自动发邮件功能
- java实现后台自动发邮件功能
- java 实现 自动发邮件功能
- SVN1.7.14上配置post_commit hooks,实现自动发邮件功能
- c#自动发邮件 Web.Config配置
- 【原创】ubuntu mutt自动发邮件配置
- Ubuntu Linux自动发邮件配置及邮件发送脚本
- Windows环境下 Git 实现发邮件功能
- ASP+JMAIL实现自动发邮件功能(转)
- VSS-打标签自动发邮件的功能
- java监控自动发邮件功能,基于126邮箱
- Excel导入外部数据的引擎
- 算法基础之分治法
- 《用 LinkedIn 做生意》 LinkedIn for Business How Advertisers, Marketers and Salespeople Get Leads...
- Domain Model和UI Model转换extension Method
- HTML5 Google语音输入
- GIT自动发邮件功能配置
- Ffmpeg快速应用开发
- C语言中的.h文件的作用
- 数据库结构导入powerdesigner
- 这样的情人节还是要彼此快乐
- Android Push Notification(Android客户端信息推送) (androidpn-server和androidpn-client)
- cocoa WebView使用注意事项
- 民用地图经纬度纠偏-高德系地图纠偏
- android几个网站