Pull Request(プルリクエスト)の作成とレビュー
1. プルリクエストとは
プルリクエスト(Pull Request, PR)とは、GitHub上でブランチで行った変更を他のブランチ(通常はmainやmaster)にマージするよう依頼する機能です。特にチーム開発においては、コードのレビューや議論を行いながら変更を本番ブランチに取り込むための中心的なワークフローです。
2. プルリクエストの作成手順
以下は、変更を加えたブランチ(例:feature/new-ui)からmainブランチへのプルリクエストを作成する一般的な流れです。
(1) GitHubでブランチをpushする
ローカルで作成したブランチに変更を加えた後、次のコマンドでGitHubへpushします:
(2) GitHub上でプルリクエストを作成
GitHubリポジトリのトップページにアクセスすると、Compare & pull requestというボタンが表示されます。それをクリックすると、プルリクエストの作成画面に進みます。
-
ベースブランチ(base):
mainやdevelopなど、マージ先のブランチを指定 -
比較ブランチ(compare): 自分が作業したブランチ(例:
feature/new-ui)
(3) タイトルと説明を記述
プルリクエストには、以下の情報を明記することが推奨されます:
-
何を変更したか(概要)
-
なぜこの変更が必要か(目的)
-
動作確認方法
-
関連Issue番号(あれば
#番号で記述)
(4) レビュワーやラベルの指定(必要に応じて)
-
レビュワー(Reviewers): レビューを依頼したいチームメンバーを選択
-
ラベル(Labels): バグ修正、機能追加、緊急対応などの分類
-
プロジェクト、マイルストーンの設定も可能
3. プルリクエストのレビューとマージ
(1) コードレビュー
指定されたレビュワーが以下のような形でレビューを行います:
-
コメント:特定の行や全体に対して指摘や提案を記述
-
Approve(承認):マージに同意
-
Request changes(修正要求):改善が必要な場合に指摘
-
Comment(コメントのみ):参考情報や軽微な指摘
(2) レビューコメントへの対応
-
コメントに基づいてコードを修正し、変更を同じブランチにpushすれば、PRに自動的に反映されます。
-
必要に応じてレビュワーとやり取りしながら改善を進めます。
(3) マージの実行
レビューが通ったら、プルリクエストは以下の方法でマージ可能です:
-
Create a merge commit(マージコミット作成)
-
Squash and merge(1つのコミットにまとめてマージ)
-
Rebase and merge(履歴を直線化してマージ)
プロジェクトのポリシーに応じた方式を選びます。
4. プルリクエストのベストプラクティス
-
小さく分割してPRを作成することでレビューの負担を軽減
-
意図と目的が伝わるタイトルと説明を記載する
-
他の開発者が理解しやすいよう、コメントやドキュメントも更新する
-
セルフレビュー(自分で見直す)を行ってから提出する
5. 関連Gitコマンド(補足)
まとめ
プルリクエストは、GitHubでのチーム開発において品質の高いコードを安全に本番ブランチへ取り込むための重要な仕組みです。レビューを通して品質を担保し、チーム内での情報共有と透明性の向上にも貢献します。
生成日:2025/06/09