git邮件发送
来源:互联网 发布:乐乎lofter手机版 编辑:程序博客网 时间:2024/05/17 22:24
1. 下载脚本: post-receive
根据原版修改的一个发送脚本: http://download.csdn.net/detail/joans123/5686621
获取git项目下config文件中的内容:
收件人列表: recipients=$(git config hooks.mailinglist)
里程碑收件人列表, 不是必须的: tagrecipients=$(git config hooks.tagmailinglist)
邮件标题前缀: emailprefix=$(git config hooks.emailprefix || echo '[GIT] ')
邮件标题项目: projectdesc=$(git config hooks.projectdesc || echo '[UNKNOWN]')
git执行发送邮件脚本时会输入三个参数:
*) oldrev : 旧版本号, 一般为SHA值缩写
*) newrev : 新版本号.
*) refname : 引用名称. 引用名称一般是指此次操作的版本名称. 有如下指:
refs/tags/* (里程碑版本), refs/heads/* (分支版本), refs/remote/* (远程版本).
根据引用类型以及版本操作可分为: refname_type = tag(提交到指定tag) | annotated tag (创建一个tag) | branch (提交到分支)
oldrev 和 newrev 之间可能跨越多个版本号, 也就是一次行提交多个commit. 可以通过rev-list命令获取所有版本:
git rev-list $newrev..$oldrev
获取指定版本的更新类型, 要么commit要么打tag : newrev_type=$(git cat-file -t $newrev 2> /dev/null)
==================================================================
从提交新旧版本之间的关系,可以判断出版本的创建/更新/删除操作:
# --- Interpret
# 0000->1234 (create)
# 1234->2345 (update)
# 2345->0000 (delete)
if expr "$oldrev" : '0*$' >/dev/null
then
change_type="create"
else
if expr "$newrev" : '0*$' >/dev/null
then
change_type="delete"
else
change_type="update"
fi
fi
==================================================================
邮件内容包括:
1. 邮件头部: 说明此次提交的引用类型: 即创建/更新/删除 --- branch/tag --- 操作版本名称
2. 根据相应的操作生成邮件内容: 操作 + (创建tag | general) 的组合.
获取全部SHA值: git rev-parse
2. mutt指定发件人发送邮件:
mutt -e 'my_hdr from:aa<bb.com>' -s "test" xxx@xx.com < mail-content.txt
mutt发送邮件配置参考: http://blog.csdn.net/joans123/article/details/6754870
- git邮件发送
- git--创建补丁--发送邮件
- 我的git学习笔记——git 邮件发送
- 自用Git提交后自动发送邮件的脚本
- Fedora git send-email 使用 msmtp 发送 Gmail 邮件
- 步骤:用git提交patch,并发送邮件…
- 邮件发送
- 邮件发送
- 发送邮件
- 发送邮件
- 发送邮件
- 邮件发送
- 邮件发送
- 邮件发送
- 发送邮件
- 发送邮件
- 邮件发送
- 邮件发送
- UINavigationController的一些总结
- 去掉Eclipse中的Validating
- CComboBox删除当前显示
- 一些jar包的作用 --学习了
- HDU 4344 大数分解
- git邮件发送
- Jslint、Jshint代码检查工具
- Unity3D启动外部exe
- loner_li web开发中登录与注册 常用的验证码(无刷新的哦)
- uboot-----borad.c . .
- 最近做的简单的编程练习
- makefile中wildcard notdir patsubst的简单介绍
- uboot中main_loop分析 .
- 如何改变对话框的背景颜色