概要
GitHubのPull Request(以降PR)には通常のPRに加え、Draftというものがあります
これはまだ完成していない段階で作成・公開するための機能です
これにより開発者はPRを「ドラフト(下書き)」としてマークすることでコードレビューの準備ができていないことを明確に示すことができます
利点
- 透明性の向上
- チームメンバーに現在の進捗状況を共有しやすくなります
- フィードバックの早期取得
- コード完成前にレビューやフィードバックを受けやすくなります
- リスクヘッジ
- 完成前のコードをマージされるリスクを回避できます
Draft Pull Requestの作成手順
- 新しいブランチを作成
- コード変更を行うための新しいブランチを作成します
- 変更をコミット
- 必要なコード変更を行い、コミットします
- Pull Requestを開始
- GitHubリポジトリのページにアクセスし、
Pull requestsタブをクリックします -
New pull requestボタンをクリックします
- GitHubリポジトリのページにアクセスし、
- ブランチの選択
- 変更をマージしたいブランチを選択します
- Draftとして作成
-
Create pull requestボタンの横にあるドロップダウンメニューからCreate draft pull requestを選択します - 必要なタイトルと説明を入力し、
Create draft pull requestをクリックします
-
下記画像が具体例です(Revertのためのコミットなのでわかりにくいかもですが...)

Draftと通常のPullRequestの違い
Draftと通常のPullRequestの違いは下記の通りです
| 特徴 | Draft PR | 通常のPR |
|---|---|---|
| 作成目的 | 下書き、フィードバックの取得 | コードのレビューとマージの準備が完了 |
| 自動マージ | されない | 状況によりマージされる |
| コメント機能 | 利用可能 | 利用可能 |
| 変換 | 通常のPRに変換可能 | そのままマージ可能 |
Draftから通常のPullRequestへの変換手順
- DraftPRを開く
- Github上で該当のDraft PRページを開きます
- 変換オプションを選択
-
Ready for reviewボタンをクリックします
-
- 通常のPRとして扱われる
- これでPRは通常のレビューおよびマージのプロセスに進むことができます
まとめ
GitHubのDraft機能は未完成のコードを共有し、フィードバックを得ることができます
この機能を利用することで、チーム内での透明性を高め、早期の段階で意見を収集することができます
Draft PRは、コードが完成していない段階でも共有できるため、長期プロジェクトや中間成果物の確認、複数人での協力作業に役立つことでしょう
