Edited at

GitHubのReview機能が強化された

More than 1 year has passed since last update.

株式会社オズビジョン@terra_yuccoです。

本日、いつものように貯まっているPull Requestを見ようとGitHubの画面を見たところ、

Discussionの見え方が違い「?」と思っていました。

そこでチームメンバーから「GitHubのレビュー機能がめっちゃパワーアップしました。」と

共有されたGitHubのリリースノート?を読んだので、Tipsを共有します。


Tips


  • Pull Requestに対して、総評という形でReviewを書けるようになった


    • Reviewには以下の種別を付けられる


      • Comment: 軽微な指摘、コメント

      • Approve: 承認

      • Request Change: 修正依頼



    • Request Changeが付いたPull Requestは、AdminもしくはRepository Owner以外は、
      修正しないとMergeできない



  • Pull Requestに対して、Reviewを必須にできる


    • 必須にした場合、ReviewがないPull RequestはMergeできなくなる




まず感じたこと


  • レビュー必須!ってできない空気を打破するのにすごくありがたい

  • 今まで、単純にアカウント管理のためなどにAdminを置いていた場合、その運用がまた変わりそう

  • レビューステータスは順に「見たよ」「イイネ」「ダメ」ってことっぽい


気づきの追記


  • 自分一人で試していると気づかなかったのですが、この機能をONにすると、従来のラインコメントは「Pending」となり、Review側に「Comment」「Approve」「Request Change」のどれかをつけてFixしないと見えないようです。【2016-09-17】


    • 「Start a review」ではなく、「Add single comment」で、従来のラインコメントを書けます。【2016-09-23】




  • 総評のレビューコメントは今のところ編集ができなさそうです。誤字怖い。【2016-09-23】



今弊社でどのように運用しているか【2016-10-14追記】

たくさんのストックをいただいているので、お礼も兼ねて、現在の弊社での運用を紹介します。

オズビジョンでは、メイン事業として ハピタス(PC), ハピタス(SP) を運営しています。それぞれWebとAPIでリポジトリを分けているため、GitHub上には上記プロダクトに直接関わるリポジトリが5個存在しています。(構成の是非は置いておき、PC用Web、SP用Web、PC用旧API、SP用旧API、統合API。その他管理画面や裏のworker処理などもありますが割愛)

現状は、ユーザに一番影響する箇所、及び自分たちの品質改善を強く進めたい箇所、という意図を込めて以下のリポジトリをReview必須にしています。


  • PC用Web

  • SP用Web

  • 統合API


About pull request reviews の自分用和訳


Pull Request Reviewについて

Pull RequestがOpenされたら、閲覧権限を持っているユーザは提案されている変更に対してレビューを行い、コメントを付けることができます。レビューはその変更へのディスカッションを可能にします。また、その変更がリポジトリの「貢献の仕方」やその他の品質ガイドラインに沿ったものであることを担保する助けになります。

レビューには3つのステータスを設定できます。


  • Comment: その変更を否定するものでも改善を要求するものでもない、一般的なフィードバック

  • Approve: Pull Requestに対してマージを承認するフィードバック

  • Request changes: Pull Requestをマージする前に修正しなければならないフィードバック

Tips:

もし「required reviews」が有効になっており、
変更・管理者・オーナー権限を持った協働作業者がレビューで「Request changes」を付けた場合、
そのPull Requestは、同じ協働作業者が別のレビューで「Approve」としてくれるまでマージできなくなります。
リポジトリのオーナー及び管理者は、「Approve」のレビューを受けていなくてもPull Requestをマージできます。
また、「Request changes」を付けたレビューアがOrganizationを去っていたり、無効な場合もマージできます。

Pull Requestに付いているレビューが全て、Conversation timelineで閲覧可能です。また、リポジトリのオーナー及び協働作業者からのレビューは、Pull RequestのMerge Boxで確認できます。


レビューを必須にする

リポジトリの管理者は、保護されたブランチに対して、少なくとも一つの「Approve」なレビューを受けていないと全てのPull Requestがマージできないように設定することができます。既に存在しているPull Requestに変更が要求されている場合、保護されたブランチ上に「required reviews」の設定をすることはできません。

より詳細な情報は、About required reviews for pull requestsを参照してください。

おしまい。



記事シェア

より総合的かつ網羅的な解説がThinkIT内にありましたので、参考までにリンクを追加しておきます。

- Protected Branches機能で柔軟なワークフローを構築する