プルリクエストをマージする

作業が完了したら、プルリクエストを上流ブランチにマージします。 リポジトリに対してプッシュアクセスを持つユーザなら誰でもマージを実行できます。

プルリクエストのマージについて

プルリクエストでは、head ブランチに加えた変更をベースブランチにマージすることを提案します。 デフォルトでは、head ブランチがベースブランチとコンフリクトしていない限り、どのプルリクエストもいつでもマージできます。 ただし、プルリクエストを特定のブランチにマージできるタイミングには制限がある場合があります。 たとえば、必須のステータスチェックに合格した場合にのみ、プルリクエストをデフォルトブランチにマージできます。 詳しい情報については保護されたブランチについてを参照してください。

すべてのマージの要件が満たされたときに、自動的にマージされるようにPull Requestを設定できます。 詳しい情報については「Pull Requestの自動マージ」を参照してください。

プルリクエストでマージコンフリクトが発生する場合、またはマージの前に変更をテストしたい場合は、コマンドラインを使用して、プルリクエストをローカルでチェックアウトしてマージすることができます。

ドラフトのプルリクエストをマージすることはできません。 ドラフトのプルリクエストに関する詳しい情報については「プルリクエストについて」を参照してください。

プルリクエストがリポジトリにマージされた後、head ブランチを自動的に削除することができます。 詳しい情報については「ブランチの自動削除の管理」を参照してください。

トピックブランチでの変更を上流ブランチにマージしたくなければ、マージせずにプルリクエストをクローズすることができます。

Tip: You can also merge a pull request using the GitHub CLI. For more information, see "gh pr merge" in the GitHub CLI documentation.

GitHub でプルリクエストをマージする

  1. リポジトリ名の下で、クリックします Pull requests Issues and pull requests tab selection

  2. [Pull Requests] リストで、マージしたいプルリクエストをクリックします。

  3. リポジトリで有効なマージオプションに応じて、以下の操作が可能です:

    メモ: リベースおよびコミットを行うと、常にコミッターの情報が更新され、新しいコミット SHA が作成されます。 詳細は「プルリクエストのマージについて」を参照してください。

  4. 要求されたら、コミットメッセージを入力するか、デフォルトのメッセージのままにします。

    squashマージのデフォルトのコミットメッセージに関する情報については「プルリクエストのマージについて」を参照してください。 Commit messageフィールド

  5. 複数のメールアドレスが GitHubアカウントに関連づけられているなら、メールアドレスのドロップダウンメニューをクリックし、Gitの作者のメールアドレスとして使いたいメールアドレスを選択してください。 このドロップダウンメニューには、検証済みのメールアドレスだけが表示されます。 メールアドレスのプライバシーを有効化している場合、<username>@users.noreply.github.comがデフォルトのコミット作者メールアドレスになります。 詳細は「コミットメールアドレスを設定する」を参照してください。 コミットメールアドレスの選択

    注釈: メールセレクタは、マージコミットを作成しないリベースマージ、またはプルリクエストを作成したユーザを squash コミットの作者としてクレジットする squash マージには使用できません。

  6. [Confirm merge]、[Confirm squash and merge] をクリックするか、[Confirm rebase and merge] をクリックします。

  7. また、代わりにブランチを削除することもできます。 こうすることで、リポジトリにあるブランチのリストが整理された状態を保てます。

プルリクエストをマージするとプルリクエストの head ブランチが自動的に削除されるようにリポジトリを設定できます。 詳しい情報については「ブランチの自動削除の管理」を参照してください。

注釈: プルリクエストがマージされた後にheadブランチを削除すると、GitHubは同じリポジトリ内に削除されたブランチをベースブランチと指定しているオープンなプルリクエストがないかをチェックします。 GitHubはそういったプルリクエストを自動的に更新し、ベースブランチをマージされたプルリクエストのベースブランチに変更します。 詳しい情報については、「ブランチについて」を参照してください。

プルリクエストは --no-ff オプションを使用してマージされますが、squash またはリベースされたコミットは例外で、fast-forward オプションを使用してマージされます。

Pull RequestをIssueにリンクして、修正が進んでいることを示すとともに、誰かがそのPull Requestをマージしたときに自動的にそのIssueをクローズさせることができます。 詳しい情報については「プルリクエストのIssueへのリンク」を参照してください。

参考リンク

このドキュメントは役立ちましたか?プライバシーポリシー

これらのドキュメントを素晴らしいものにするのを手伝ってください!

GitHubのすべてのドキュメントはオープンソースです。間違っていたり、はっきりしないところがありましたか?Pull Requestをお送りください。

コントリビューションを行う

OR, コントリビューションの方法を学んでください。

問題がまだ解決していませんか?

GitHubコミュニティで質問するサポートへの連絡