经常有朋友反馈说邮箱被 GitHub 的消息通知狂轰滥炸,各种无关的邮件提醒搞得很烦。


其实,对于这个问题,GitHub 官方肯定也是考虑到了的,并且很早就给出了对应的解决方案。在这篇文章里,我们一起来看看应该如何正确接收 GitHub 的消息邮件通知?
GitHub 的消息通知机制
消息通知的类型
在两种情况下,我们会收到 GitHub 的消息通知。
一是我们关注的,也即是 Watching
[1]列表。当我们 Watch
了 GitHub 某个项目之后,相当于订阅了这个项目的所有动态。这种情况下,这个项目的新版本发布、新 Issue(s)、新 Pull Request(s) 以及所有话题讨论都会通知到我们。

Be notified of all conversations.
二是我们参与的,也即是 Participating
。当我们参与到某个 issue、pull request、commit 讨论,或者被别人 @ 后,我们都会持续收到后续的更新邮件。

这里顺便回应一下上文 @leiwei0715 同学。我们 Star 某个项目,只是代表我们收藏了该项目,这并不会让我们在后续收到消息提醒。
消息通知的方式
GitHub 会通过以下两种方式来通知我们。
其中一种是站内信。当我们登录 GitHub 账户后,如果有新的消息,那么,我们在 GitHub 导航栏会看到一个·小蓝点,点进去就可以看到详细的通知了。这是一种被动的消息提醒方式,提示能力相对较弱,我们一旦没有登录 GitHub,就收不到任何消息通知了。

另外一种是邮件通知。邮件通知会直接发到我们的邮箱,而且我们直接回复邮件的效果相当于登录到 GitHub 相关的页面进行回复,相对来说比较方便。这是一种主动的消息提醒方式,时效性很好,可以防止我们错过一些重要的消息。

但是,第二种方式有一个很大的问题,稍不注意就可能被邮件信息轰炸,这也是很多朋友苦恼的问题。那么接下来,我们就来看看如何能够减少 GitHub 消息邮件的干扰。
减少 GitHub 邮件消息干扰
取消关注某个 GitHub 项目
上文中提到 Watching
列表。我们正在 Watching
的项目,都会出现在 Watching
列表页,在这里我们可以随时清理不再重要的项目。


其中:
•No watching
意味着取消对本项目的关注,你将不会收到与你无关的通知,而与你有关的,即上文提到的 Participating
,如果有了新的回复,你还是会收到通知的;•Releases only
则意味着当有新版本发布、或者与你有关的,如果有了新的动态,你就会收到通知;•Ignoring
则表示任何时候都不会有通知。
尽量不要选择
Ignoring
,否则你任何消息都收不到。
取消关注某个讨论
当我们参与了某个讨论后,GitHub 自动帮我们订阅这个讨论。如果我们觉得某个讨论已经没有我们什么事了,但后续仍然会有新的消息涌入,那么我们可以选择屏蔽它。找到如下所示的 Unsubscribe
取消订阅即可。

GitHub 还贴心地给我们提供了更多自定义选项,点击 Customize
设置我们想要的订阅模式即可。

取消自动关注
在 GitHub Notifications[2] 设置页面,我们还可以选择接收消息通知的方式。这些设置适用于我们正在关注的内容。

我们可以看到,其中有一项是 Automatic watching
。

这个功能挺有意思,勾选状态意味着每当我们获得了一个项目的 push 权限后,GitHub 会帮我们自动关注这个项目。这在开源社区是很有用的一个功能,因为当我们获得这个权限时,往往意味着我们成为了这个 repo 的核心维护者,我们可能需要第一时间掌握这个项目的最新动态。
当然,如果觉得确实没必要自动 Watching
,那么我们可以取消勾选。
看到这里,相信你已经对 GitHub 的消息通知有了足够的了解,若有任何疑惑的地方,欢迎随时留言与我互动。
引用链接
[1]
Watching
: https://github.com/watching[2]
Notifications: https://github.com/settings/notifications
欢迎扫码关注公众号「Doocs开源社区」,原创技术文章第一时间推送。
