Draft PR(ドラフトプルリクエスト)とは

定義と基本的な使い方

Draft PR(ドラフトプルリクエスト)は、GitHubにおけるPull Requestの状態の一種で、「このPRはまだ完成していません」「レビューは不要です」という意思表示を込めて作成するものです。

正式にはGitHubが2019年に導入した機能で、PRのステータスを「Ready for review」にするまでレビューフローに乗らないようにすることができます。

PRタイトルの前に [Draft] が付く
Mergeボタンが非アクティブになる
Reviewersへの通知が送られない

なぜDraft PRを使うのか?

✔ レビュー前にチームと内容を共有したい

  • 実装方針が合っているか確認したい
  • 途中経過を早めに見せておきたい(WIP: Work In Progress)

✔ CIでエラーが出ることを事前に確認したい

  • 本格レビュー前に、テスト・lintを通すだけの目的
  • CIベースのレビュー前検証用途にも便利

✔ 意図せぬレビュー通知を防止したい

  • 完成前にレビュアーが誤ってApproveしてしまう
  • CIがコケていても「レビューお願い」と誤認されるのを防ぐ

実務での使われ方:会話とマナー

Developer:
  まだコード整理中ですが、方針確認したくてDraft PR出しておきます。
Reviewer:
  了解です、CI通ったら「Ready for review」に切り替えてくださいね。
  • Draft PRの状態ではレビューリクエストを出さないのが通例
  • 「Draftのまま数週間放置される」ことは避けたい(スレッドの劣化)

操作方法(GitHub)

  • PR作成時:
    「Create Pull Request」画面で「Create as draft」にチェック

  • 既存PRをDraftに切り替え:
    PRページ右上 → 「Convert to draft」

  • Draftを通常PRに戻す:
    同様の場所から「Ready for review」

注意点と運用の工夫

Draftのまま放置されがち

  • 放置されたPRはレビュー対象から外れ、プロジェクト全体の可視性が低下する

✔ チームでDraftの意味を統一しておく

  • どこまで実装されたらReadyにするか?
  • Draft中に指摘してもらっていいのか?(チームポリシー次第)

✔ タイトルやPRテンプレで明示的に目的を示す

[Draft] API設計の方向性確認用PR
目的:
- 実装は未完だが、構成とファイル配置を見てもらいたい
- 細部の実装は別PRに分ける予定

Draft PRと通常PRの違いまとめ

項目 Draft PR 通常PR
Merge可否 ❌(不可) ✅(可能)
レビュー通知 🚫 自動では送られない ✅ 通常通り送信
目的 WIP共有/構造確認/CIチェック 本番向けのレビュー依頼
視覚表示 タイトルに「Draft」 なし(通常)

まとめ:Draft PRは“進捗を共有するためのレビュー前段階”

  • Draft PRを活用することで、完成前の早期フィードバックが可能
  • チーム内で「どこまで出すか/どこまで見るか」の認識共有が重要
  • 「通知しないけど見てほしい」状態をつくる便利なレビューフラグ

関連用語