How to set default fork for pull requests?

GitHub keeps track of forks made through their interface and assumes pull requests will be for that original repository. You need to tell GitHub that your copy is not a fork but rather a regular repository that just happens to have identical history. Sadly, GitHub doesn’t offer a good way to just uncheck the fork link. I typically solve it this way:

  1. Clone the repository, git pull, and ensure your local copy is completely up to date.

  2. Delete the repository on GitHub.

  3. Create the repository on GitHub using the exact same name. Ensure it’s an empty repository (don’t create a README or LICENSE file.)

  4. git push all the content back into the repository. (You may need to switch to each branch and push it, and you also may need to git push --tags.)

FRAGILE: This approach will lose existing GitHub issues and pull request comments. If you’re using these heavily, this approach is probably a bad idea, and you should contact GitHub customer support to help you instead.

Leave a Comment

tech