你们公司在用 GitLab 管理源代码吗?有在大量用 Issue 和 MergeRequest 么?有觉得需要一个想 GitHub 那样直接回复提醒邮件就能在 GitLab 相关内容上面回复么?
gitlab-mail-receiver 就能帮你实现这个需求!
支持 POP/IMAP 协议;
独立进程启动服务,定期检测邮件处理回复;
收到邮件回复后会做的内容解析,定位 Issue/MergeRequest 并自动创建回复;
/--> [ Notify ] ----------------> [Mail Server] <---> [Mail Client] { GitLab } ---/ ^ ^ | |-------< [ gitlab-mail-receiver ] <---- check --> |
这个 Gem 会往 GitLab 的 Mailer Notify 里面覆盖几个函数,将邮件的 reply_to 改成类似这样 your- mail+group/project!100@server.com, 其中 group/project 是项目名称,!100 表示 Issue 编号 100。
your- mail+group/project!100@server.com
group/project
!100
这样用户收到的 GitLab 通知,回复地址将会带有 Issue 信息,邮件其实是回发到 you-mail@server.com,gitlab- mail-receiver 这边将会解析出来,对应到 Issue/MergeRequest。
you-mail@server.com
所以,你需要你的邮件服务器支持 + 号(PS: Gmail 是支持的)