Skip to content

Instantly share code, notes, and snippets.

@glennblock
Created March 4, 2012 19:27
Show Gist options
  • Save glennblock/1974465 to your computer and use it in GitHub Desktop.
Save glennblock/1974465 to your computer and use it in GitHub Desktop.
Force your forked repo to be the same as upstream.
git fetch upstream
git reset --hard upstream/master
@michaelshiyu
Copy link

Works like a charm. Thanks!

@108krohan
Copy link

This is so great, thank you! @JerryGoyal

@andre91998
Copy link

what if there are new files in my commit that I want to keep, but changes the upstream made to files that I already have that I also want. When I try to merge upstream, I receive an error: files would be overwritten by merge. But I want them to be overwritten.

@bilogic
Copy link

bilogic commented Mar 22, 2021

can we do this from the GitHub UI?

@rzvn2600
Copy link

rzvn2600 commented Apr 1, 2021

How can I force users to pull from upstream after a major upgrade of the source code. I have PR validation in place (Jenkins) and they are using the old validation code (python).. ?

@Evavic44
Copy link

Works perfectly. Thanks for the tip.

@skeetmtp
Copy link

skeetmtp commented Mar 16, 2022

you may need to also push tags

git push --tags

@Steveantor
Copy link

other variations:

git reset --hard upstream/master
git reset --hard upstream/main
git reset --hard upstream/development

@solalatus
Copy link

👍

@ChinYikMing
Copy link

complete git commands would be like this:

git remote add upstream https://github.com/some_user/some_repo
git fetch upstream
git checkout master
git reset --hard upstream/master  
git push origin master --force

Perfect! Thank you!

@poa00
Copy link

poa00 commented May 30, 2024

So this works great locally, but how can I get my GitHub repo master branch to be the same as locally/upstream??

This is possible with a one-liner that doesn't require downloading anything...

For anyone interested in syncing your GitHub-hosted fork directly (without cloning locally first) you can do this using the GitHub CLI:

gh repo sync owner/cli-fork -b BRANCH-NAME

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment