GitHub offers different ways to merge pull requests into your repository.
Depending on your project’s needs and preferences, you can choose which merge methods to enable or disable in your repository settings. Here are some suggestions of pull request settings on GitHub to consider/think about:
“Allow Merge Commits:” ❌
This means that you cannot use the merge commit method to merge pull requests. The merge commit method creates a new commit that combines the commits from the base branch and the head branch.
“Allow Squash Merging” ❌
This means that you cannot use the squash merge method to merge pull requests. The squash merge method combines all the commits from the head branch into a single commit and adds it to the base branch.
“Allow Rebase Merging” ✅
This means that you can use the rebase merge method to merge pull requests. The rebase merge method applies the commits from the head branch individually on top of the base branch.
“Always suggest updating pull request branches” ✅
This means that GitHub will suggest that you update the head branch of your pull request if there are new commits on the base branch. This can help avoid merge conflicts and keep the commit history clean.
“Automatically delete head branches” ✅
This means that GitHub will automatically delete the head branch of your pull request after it is merged. This can help keep your repository organized and avoid unnecessary branches.
These are some of the pull request settings on GitHub that you can consider or think about for your project.
By choosing the right merge methods and options, you can ensure that your pull requests are merged smoothly and efficiently, while maintaining a clear and consistent commit history.
You can also customize your pull request settings further by using branch protection rules, required reviews, status checks, and more.