AQ Tech Blog

GitHubでレビュー担当者を簡単システム管理!Code Ownersの使い方

作成者: takeshi.aoyagi|2024年09月23日

はじめに

チームでの開発が進むにつれて、「このPull Requestは誰の承認が必要なのか」と判断に迷うときがありませんか?
もちろんドキュメントに起こしているのであればそれを確認しても良いですし、他のメンバーに聞くのも良いでしょう。
ただ、実装とは関係ない作業に時間をかけるのは避けたいとは思いませんか?
そんな時に役立つのがGitHubのCode Owners機能です。

Code Ownersとは

  • Code Ownersは、リポジトリ内の特定のファイルやディレクトリに対して、誰がレビューすべきかを指定できる機能です。

  • Code Ownerを設定しておくと、Pull Requestが作成された際に指定されたユーザーやチームがレビュー担当者として自動的に割り当てられます。

  • これにより、コードレビューのプロセスがより厳密に管理されます。

  • appディレクトリ配下は鈴木さん(suzuki)、public配下は佐藤さん(satou)をCode

    /app/ @suzuki
    /public/ @satou
  • releaseブランチは鈴木さん(suzuki)、mainブランチは佐藤さん(satou)をCode Ownerにしたい

    releaseブランチ

    * @suzuki

    mainブランチ

    * @satou

使用方法

  1. CODEOWNERSファイルを作成

    • .github/CODEOWNERSを作成し、ディレクトリごとにCode Ownersを設定する。

      .github/CODEOWNERS

      /src/ @user1
      /config/settings.yml @user2
  2. Code Owners適用

    • Settings > Branches > Branch protection rulesでRequire review from Code Ownersにチェックを入れたルールを作成する。※この設定により、Code Ownerのレビューが必須となります。任意に設定したい場合はチェックを外してください。

Code Ownersを利用する上での注意点

パス指定

CODEOWNERSファイルのパス指定では、より具体的なパスが優先されます。
たとえば、/src/を指定していても、/src/components/のようにさらに深いディレクトリが指定されている場合、/src/components/の指定が優先されるので注意が必要です。

ユーザーの管理

レビュー担当者に指定したユーザーの役割が変更されたりプロジェクトから外れた場合は、Code Ownersの設定を個別で変更し、最新の体制を反映させる必要があります。

まとめ

ここまで読んでいただきありがとうございます。
Code Owners機能は、チーム開発におけるレビュー担当者の確認や割り当てを自動化することができ、シンプルながら非常に便利です。
ぜひ皆さんもCode Ownersを使って開発効率を向上させましょう。

参考

GitHub公式-コードオーナーについて