"Squash and Merge" as default Pull Request merge option

I tried searching for an answer to this question but I couldn’t find one.   For a pull request, if I make the “Create a merge commit” and “Squash and Merge” options available, is it possible to make “Squash and Merge” the default for any PRs opened for that repository?  Currently it looks like “Create a merge commit” will be the default if both options are available, and I don’t see a way to change that.


Currently, there doesn’t appear to be a way to change that, no. Either more than one option is available and the last one that you used is the one that is selected or there is only one option and you don’t get a choice.

1 Like

Any update ton this? I’d love this feature.


It looks like https://help.github.com/en/articles/configuring-commit-squashing-for-pull-requests now supports disabling the merge commit option.


Having an option to configure a default would be great. We use rebasing by default and merge commit as an exception. Saving the last used option leads to a lot of accidental merge commits


Would also appreciate such feature, especially for GitHub Enterprise.

Per-project default method could be implemented intuitivelly by allowing to reorder the merge methods in settings.

As a project administrator I’d pick “Squash merge” cause it’s easier than teach everyone that comment “Bug fix” is a bad practice.

Also per-user default method would make sence as next improvement. Although I’ll use “Squash Merge” as default for my project, I still prefer “Commit Merge” for myself because I usually dedicate some time to structured commits with meaningfull commit messages.

This could be set in user’s profile and be a subject of availability in each exact project - if your preferred method is not allowed, just use project’s default.

1 Like

+1 on adding this as a feature.

My workaround now is to only allow Rebase and Merge (my preference rather than squash, but that’s not the point here), and then for the rare exceptions that I want to Merge Commit instead, I change the settings to allow it, do the merge, and then change the settings back.

I’d much rather have Merge Commits be allowed, but require being explicitly selected, leaving Rebase and Merge as the displayed default.

+1 see no reason why this shouldn’t be allowed

+1 for this feature.

1 Like

+1 for this…we have too many bs messages. We have to grow our commit awareness but for now squash and merge would be helpful

+1. Depending on your workflow, a PR should be one commit or a number of commits. (I think 1 is cleaner). This as a configuration would be useful.

+1, last used leads to accidentally using the wrong strategy for our team as well. Would actually love to see a default by branch, since we use different strategies depending on the branch.


+1 on this feature. Is there any update on wanting to add this or not?

We want to by default do a “squash + merge” but allow power users to decide for themselves.

+1 it’s weird that it’s not already an option

+1 for being able to configure a default merge strategy.

+1 for being able to configure a default merge strategy.

+1 for being able to configure a default merge strategy.

+1 for configuring a default merge strategy

This is a good suggestion!

I did find a workaround in the meantime: once an individual use chooses Squash and Merge on a PR in a repo, GitHub does default to it the next time (for that individual).

It looks like you can disable the ability for people in the repo to select merge, or rebase - here