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

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

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

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

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

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

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

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

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

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

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

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

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

  1. リポジトリ名の下で、クリックします Pull requests

    Issues tab

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

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

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

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

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

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

  1. [Confirm merge]、[Confirm squash and merge] をクリックするか、[Confirm rebase and merge] をクリックします。
  2. また、代わりにブランチを削除することもできます。 こうすることで、リポジトリにあるブランチのリストが整理された状態を保てます。

To learn more about GitHub CLI, see "About GitHub CLI."

To merge a pull request, use the gh pr merge subcommand. Replace pull-request with the number, URL, or head branch of the pull request.

gh pr merge pull-request

Follow the interactive prompts to complete the merge. For more information about the merge methods that you can choose, see "About pull request merges."

Alternatively, you can use flags to skip the interactive prompts. For example, this command will squash the commits into a single commit with the commit message "my squash commit", merge the squashed commit into the base branch, and then delete the local and remote branch.

gh pr merge 523 --squash --body "my squash commit" --delete-branch

参考リンク

このドキュメントは役立ちましたか?

プライバシーポリシー

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

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

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

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

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