SlackとGitHubを連携してrepositoryのissue, pull requestの変更を自動通知する方法

Tadashi Shigeoka ·  Fri, February 25, 2022

GitHubの通知をSlackに自動で送信することで、開発チーム全体で最新の状況を素早く共有できます。この設定手順では、GitHub repositoryに関するissue、pull requestなどの情報を特定のSlackチャンネルに自動投稿する方法を説明します。

GitHub -> Slack通知の設定手順

1. SlackチャンネルにGitHubアプリを招待

SlackチャンネルにGitHubアプリを招待するには、以下のコマンドを使用します。

/invite @github

2. GitHubアカウントでサインイン

次に、Slack内でGitHubにサインインします。以下のコマンドを使って認証を行います。

/github signin

3. GitHub repositoryの通知を設定

GitHub repositoryの通知(issue, pull requestなど)を特定のSlackチャンネルに送信するには、以下のコマンドを使用します。

/github subscribe owner/repo issues, pulls, releases, deployments, reviews, branches, comments:'channel', discussions

上記のowner/repoの部分は、連携したいrepositoryの所有者とrepository名に置き換えてください。たとえば、codenote-net/sandboxのように記述します。また、コマンドのオプションは私の場合の設定例ですので、必要に応じて変更してください。

4. Slackスレッド投稿を無効化

Slackへの通知がスレッドで投稿されるのではなく、チャンネルに直接投稿されるようにする設定を行います。

  1. 以下のコマンドを使用して設定画面を開きます
    /github settings
  2. スレッドを無効化するには、以下の項目を無効にします
    • Disable threading for Pull Request and Issue notifications -> Disable

5. repositoryの購読一覧を表示

現在購読しているrepositoryとその通知設定の一覧を表示するには、以下のコマンドを使用します。

/github subscribe list features

6. repositoryの購読を解除

repositoryの通知を解除したい場合は、以下のコマンドを使用します。

/github unsubscribe owner/repo

その他の機能

GitHubとSlackの連携には他にも様々な便利な機能が用意されています。詳しくは以下の公式ドキュメントを参照してください。

https://github.com/integrations/slack

以上、GitHubとSlackの連携をいい感じに設定しておきたい、現場からお送りしました。