Skip to main content

pull request の作成

リポジトリへの変更の提案や共同作業を行うには、pull request を作成します。 これらの変更は "ブランチ" を介して提案され、既定のブランチには完成していて、かつ承認された作業のみが確実に含まれるようにします。

この機能を使用できるユーザーについて

Anyone with read access to a repository can create a pull request.

Platform navigation

pull request 用に新しいブランチを作成する必要があり、リポジトリへの書き込みアクセス許可がない場合は、まずリポジトリをフォークできます。 詳細については、「フォークからプルリクエストを作成する」および「フォークについて」を参照してください。

プルリクエストを作成するとき、変更をどのブランチにマージするかを指定できます。 2 つのブランチ間で違いがある場合にのみ、プルリクエストをオープンできます。

Note

パブリック リポジトリの pull request を開くには、ヘッドまたはソース ブランチへの書き込みアクセス権が必要です。または、organization が所有するリポジトリの場合は、pull request を開くリポジトリを所有する organization のメンバーである必要があります。

pull request をイシューにリンクして、修正が進行中であることを示し、誰かが pull request をマージしたときイシューを自動的にクローズすることができます。 詳しくは、「Pull RequestをIssueにリンクする」をご覧ください。

ブランチの範囲と宛先リポジトリの変更

デフォルトでは、プルリクエストは親リポジトリのデフォルトブランチに基づいています。 詳しくは、「ブランチの概要」をご覧ください。

デフォルトの親リポジトリが正しくない場合、親リポジトリとブランチをどちらもドロップダウンリストで変更できます。 また、基準点間の差分を確認するために、ドロップダウンリストで head ブランチと base ブランチを入れ替えることもできます。 ここで言う基準は GitHub リポジトリにあるブランチ名でなければなりません。

pull request のスクリーンショット。 比較ブランチを編集するドロップダウンが展開されています。

ブランチについて考えるときは、"base ブランチ" が変更を適用する "場所" であり、"head ブランチ" には適用する "内容" が含まれていることに注意してください。

base リポジトリを変更するとき、プルリクエストの通知も変更します。 base リポジトリにプッシュできる人は誰でもメール通知を受信し、次回サインインすると自分のダッシュボードで新しいプルリクエストを確認できます。

ブランチの範囲にある何らかの情報を変更すると、[Commits] と [Files changed] プレビュー領域は更新されて新しい範囲を表示します。

Tip

  • 比較ビューを使用して、どの時間枠であっても比較対象として設定できます。 詳しくは、「コミットを比較する」をご覧ください。
  • プロジェクトメンテナーはプルリクエストテンプレートをリポジトリに追加できます。 テンプレートにはプルリクエスト本文にある情報のプロンプトが含まれます。 詳しくは、「Issueとプルリクエストのテンプレートについて」をご覧ください。

プルリクエストの作成

Note

GitHub CLI の詳細については、「GitHub CLI について」を参照してください。

pull request を作成するには、gh pr create サブコマンドを使用します。

gh pr create

pull request を個人に割り当てるには、--assignee または -a フラグを使用します。 pull request を自己割り当てするために @me を使用できます。

gh pr create --assignee "@octocat"

pull request をマージするブランチを指定するには、--base または -B フラグを使用します。 pull request のコミットを含むブランチを指定するには、--head または -H フラグを使用します。

gh pr create --base my-base-branch --head my-changed-branch

新しい pull request のタイトルと本文を含めるには、--title--body フラグを使用します。

gh pr create --title "The bug is fixed" --body "Everything works again"

pull request をドラフトとしてマークするには、--draft フラグを使用します。

gh pr create --draft

新しい pull request にラベルまたはマイルストーンを追加するには、--label--milestone のフラグを使います。

gh pr create --label "bug,help wanted" --milestone octocat-milestone

特定のプロジェクトに新しい pull request を追加するには、--project フラグを使用します。

gh pr create --project octocat-project

個人またはチームをレビュー担当者として割り当てるには、--reviewer フラグを使用します。

gh pr create --reviewer monalisa,hubot --reviewer myorg/team-name

既定の Web ブラウザーで pull request を作成するには、--web フラグを使用します。

gh pr create --web

pull request 内のファイルに変更を加える

pull request を開いた後、head ブランチに新しいコミットを追加することで、引き続きファイルに変更を加えることができます。

参考資料