GitHubで特定のorgだけメール通知しない
会社と個人で同じGitHubアカウントを使っているが、このとき同じ内容の通知がメールとGitHubの通知に届く。そうすると整理するとき2倍の労力が必要になって煩わしい。視覚的にクローズしたかどうかが分かるので、どちらかといえばGitHubのUI上に寄せてしまいたい。さらに言えば会社のオーガニゼーションはSlackの通知もある。
しかし個人のリポジトリは数もそれなりに存在するし、個別にWatchしているイシューなどは普段から見ている訳じゃないので、これらについては気付けるようにメールで通知がほしい。この欲求はもしかしたらGitHubのUIに慣れてしまえば解決するかもしれないが。
上記の目的を達成したいが、2025年5月時点では通知の設定で
- Watching
- Participating, @mentions and custom
- Customize email updates
- Actions
- Dependabot alerts: New vulnerabilities
などの単位で個別に Email または On GitHub を(ものによっては CLI も)選択できるけれども、これはアカウント全体の設定であってオーガニゼーション単位で選択することができない。そのため、ここで Email を除いてしまうと、個人のリポジトリや個別のイシューも届かなくなってしまう。
正規の方法では実現できそうもないので、会社メールアドレスに +discard エイリアスを付けたメールアドレスを追加して、会社のオーガニゼーションから届くメールはエイリアスにルーティングする。このときデフォルトのメールアドレスは個人のものにしておく。また、通知先は Email と On GitHub をどちらも選択しておく1。そのうえで、届いたメールはGmailのフィルタで削除することにした。そうすると以下の状態が実現できる。
個人リポジトリに関する通知
Section titled “個人リポジトリに関する通知”個人メールアドレスにルーティングされるのでメールとGitHub Notificationsどちらにも届く。
個別にWatchしたイシューやPRの更新通知
Section titled “個別にWatchしたイシューやPRの更新通知”会社オーガニゼーションでWatchしているものは届かないが、それ以外はメールにもGitHub Notificationsにも届く。
会社オーガニゼーション関連の通知
Section titled “会社オーガニゼーション関連の通知”GitHub Notificationsには届く。メールはカスタムルーティング設定により +discard エイリアスにルーティングされるが、これはGmailの設定で削除するためメールボックスには届かない。
Actions は Email だけなので、会社オーガニゼーションのActionで失敗した通知が届かないが、これはSlackで通知されるので支障はない。
Footnotes
Section titled “Footnotes”-
デフォルトがそうなので Actions と Dependabot alerts: New vulnerabilities は Email と CLI だけ選択した ↩