Skip to main content

Configuring commit squashing for pull requests

You can enforce, allow, or disable commit squashing for all pull request merges on GitHub.com in your repository.

You can configure pull request merge options on GitHub.com to meet your workflow needs and preferences for managing Git history. For more information, see "Configuring pull request merges."

スカッシュ マージの既定のコミット メッセージの詳細については、「pull request のマージについて」を参照してください。

  1. On GitHub.com, navigate to the main page of the repository.

  2. リポジトリ名の下の [ 設定] をクリックします。 リポジトリの設定ボタン

  3. Under "Pull Requests", select Allow squash merging. This allows contributors to merge a pull request by squashing all commits into a single commit. The default commit message presented to contributors when merging is the commit title and message if the pull request contains only 1 commit, or the pull request title and list of commits if the pull request contains 2 or more commits.
    Pull request squashed commits

  4. Optionally, under Allow squash merging, use the dropdown to choose the format of the default squash commit message presented to contributors when merging. The default message uses the commit title and message if the pull request contains only 1 commit, or the pull request title and list of commits if the pull request contains 2 or more commits. You can also choose to use just the pull request title, the pull request title and commit details, or the pull request title and description. Screenshot of emphasized default squash message dropdown

If you select more than one merge method, collaborators can choose which type of merge commit to use when they merge a pull request. コミットの線形履歴を必要とする保護されたブランチ ルールがリポジトリにある場合、スカッシュ マージ、リベース マージ、あるいはその両方を許可しなければなりません。 詳細については、「保護されたブランチについて」を参照してください。

Further reading