用 Gmail 来高效管理大量 Github 通知

现在的公司办公重度依赖 Github,除了代码管理,日常讨论事情也基本上用 Github issue。这就导致了通知急剧增加,最近在整理邮件的时候发现 Github 对邮件通知做了详细的分类,如果配合 Gmail 的 filter 功能可以很高效的管理这项通知。

邮件通知种类
Github 的邮件通知共有 10 类:
  • assign: 你被分配的 issue/PR 通知
  • author:你创建的 issue/PR 通知
  • comment:你评论过的 issue/PR 通知
  • mention:你在 issue/PR 中被 @
  • push:你的i订阅的 PR 有代码提交
  • state_change:你订阅的 issue/PR 被打开或关闭
  • team_metion:你所在的用户组被 @
  • review_requested:你被请求 review 某个 PR
  • subscribed:你订阅的 issue 有更新
  • your_activity:你自己在 Github 产生的行为

这些前缀最终会体现在通知邮件的 CC 地址中。其中 your_activity 比较特殊,它是你自己在 Github 的行为产生的通知,默认是不发邮件的,除非你设置里勾选允许发送。
优先级划分
明白了这些通知意义之后,就可以对它们进行分级,我建议把所有通知分为高,中,低 3 级,每个人有不同分法,下面是我的分法:
  • 高优先级
    • mention,assign,review_requested,comment,author
  • 中优先级
    • team_metion
  • 低优先级
    • push,subscribed

通知邮件 filter
划分好了优先级,就能针对每个优先级建 filter。 在邮箱搜索框最右边有个倒三角按钮,点一下开始创建 filter:


第一步是邮件的筛选信息,只要填写 From 和 To 就可以了,From 固定为 [email protected],To 填写上面的前缀 + @noreply.github.com

第二步设置收到复核筛选的条件做什么操作,这里有 2 个建议:
  • 对于高优先级邮件,建议不要勾选 “Skip the Index"
  • 不同优先级的邮件添加不同的标签,如下:


优先级 filter 创建完之后,针对每个不同种类的邮件可以再建一个单独的 filter ,为了打上不同的标签:


最后所有 Github 邮件就会有条不紊的躺在你邮箱了。


资料参考: