Merge a pull request into the upstream branch when work is completed. Anyone with push access to the repository can complete the merge.

If you decide you don't want the changes in your branch to be merged to the upstream branch, you can also close the pull request without merging.

Merging a pull request using the GitHub web interface

If the merge will not have any conflicts, you can merge the pull request online.

Tip: The pull request page on GitHub includes custom instructions for manually merging a pull request on the command line. You can use these instructions if your pull request can't be merged online, or if you'd like to test your changes locally before merging. These instructions can be found near the Merge pull request button.

  1. Under your repository name, click Pull requests. Issues and pull requests tab selection

  2. In the "Pull Requests" list, click the pull request you'd like to merge.

  3. Click Merge pull request or if you have merge squashing enabled, click Confirm squash and merge. Merge and squash button

  4. Type a commit message, or accept the default message. Commit message field

  5. Under the commit message box, click Confirm merge. Confirm button
  6. Optionally, delete the branch. This keeps the list of branches in your repository tidy.

Pull requests are merged using the --no-ff option, except for pull requests with squashed commits, which are merged using the fast-forward option.

Checking out a pull request locally

When someone sends you a pull request from a fork or branch of your repository, you may want to merge it locally to resolve a merge conflict or to test and verify the changes on your local computer before merging on GitHub. For more information, see "Checking out pull requests locally."

Further reading