How to disable pull requests in GitHub?

Issue

I am trying to understand how will I be able to disable “pull requests” in github.

Question 1:
We are trying to use the rebase workflow and that means using pull requests can be harmful if that isn’t a fast forward push.
One Solution: Setup branch permissions for the branches where I want to disable pull request. Or add me as the reviewer to anything that goes into master.

Question 2:
So that begs the question, can I setup branch permissions in github ?? Can I add myself as a reviewer for any change that wants to get into master ?

Question 3:
Github has definitely removed pre-receive hooks, so how can I do any enforcements before the source hits the server ? pre-commit hooks can be done, but at the same time can be pain.

I had asked a similar question here: Commit message hook on github

It seems github could be useful for the merge workflow or even git-flow, but it can be hard to maintain for the rebase workflow, is that a fair assumption ?

Can I consider atlassian Stash as a better tool for the rebase workflow ?

Solution

How to disable pull requests in GitHub?

Since Nov. 2021, this is now possible:

Allow bypassing required pull requests

This is a good practice, but you may want to make exceptions to this rule for specific people and teams.
For example, if you have an automated process that calls GitHub APIs to make changes in a repository, you may want to permit that automation to make changes without creating a pull request.

Now, when you require pull requests and their related protections for a branch, you can specify people and teams who should be free from those requirements.

As shown in the image below, select Allow specific actors to bypass pull request requirements. Then, search for and select the people and teams who should be allowed to bypass the requirements.

Screenshot of option to bypass PR requirements -- https://github.blog/wp-content/uploads/2021/11/bypass-pull-request-requirements.png?resize=715%2C375?w=715

For more information, visit Managing a branch protection rule.


Before 2021, that was not not possible:


Armin Sebastian suggests in GitHub issue 1191

I’ve made a new app that immediately closes and locks new and existing issues or pull requests and also supports posting a comment and labeling.
It is perfect for forks and mirrors, and you can configure it to your liking

dessant/repo-lockdown, with a .github/lockdown.yml including

# Lock issues and pull requests
lock: true

# Limit to only `issues` or `pulls`
# only: pull

Other workaround:

Note that (considering the OP dates from January 2015):

And Since October 2016, you can dismiss a review

https://cloud.githubusercontent.com/assets/98681/19321785/3ad41962-906b-11e6-9320-f24bf164e17e.png

However, this requirement can sometimes block your team’s progress without good reason.
If someone leaves a review that requests changes and then goes on vacation or runs into computer problems, your pull request could be blocked for days, even after you’ve addressed the reviewer’s concerns.

This will unblock your pull request, freeing you up to merge it!

Answered By – VonC

This Answer collected from stackoverflow, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply

(*) Required, Your email will not be published