GitHub offers three options to merge PRs:
- Merge pull request: No fast-forward merge.
- Squash and merge: Squash commits and perform fast-forward merge.
- Rebase and merge: Rebases all commits onto the other one.
Is it somehow possible to automatically squash the commits before merge and then apply the merge without fast-forwarding it?
One option is of course to squash them before merging manually and then use option 1, but doing it that way it cannot be forced and the PR needs to be reviewed again and the merge is blocked until it is approved.