Skip to main content

Configuring commit squashing for pull requests

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

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

有关 squash 合并的默认提交消息的信息,请参阅“关于拉取请求合并”。

  1. On your GitHub Enterprise Server instance, navigate to the main page of the repository.

  2. 在存储库名称下,单击 “设置”。 “存储库设置”按钮

  3. Under "Merge button", 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

If you select more than one merge method, collaborators can choose which type of merge commit to use when they merge a pull request. 如果你的存储库中有需要线性提交历史记录的受保护分支规则,则必须允许 Squash 合并和/或变基合并。 有关详细信息,请参阅“关于受保护的分支”。

Further reading