This post was most recently updated on November 30th, 2020.2 min read.
This is one of those “note to self” -kind of entries. This workflow is probably so natural to a lot of you all, that you won’t need to ever google it – but since I don’t do that much development with the full “fork – clone – branch – submit pull request” -process (whihc is really typical with GitHub and I guess Open Source in general), I always need to look up the instructions on how to add pull any changes from the original repository to yours.
I even need to do that often enough, that I wanted to document it somewhere where I can find it easily. Like my blog :)
So, here goes:
Synchronizing your local changes with the upstream repository
There’s a number of steps – see below.
Time needed: 10 hours.
How to synchronize your forked and local repositories with the original one on GitHub?
- Open a command prompt
Open Git Bash or similar command prompt with git executable available.
- Change the current working directory to your local project.
This can be done running the following command:
- Change to your desired branch
You’ll probably want to merge to your main or master – so make sure it’s checked out!
You can change it from GitHub Desktop (if you’re using it), or you can run this:
git checkout [branch_name]
- Configure the origin as a remote repository
This needs to be done to enable you to fetch the new commits from it. You can verify if it already is by running this:
git remote -v
If it isn’t, then run this:
git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
- Sync your local repository with the upstream (the original one)
Run the following command in command prompt:
git fetch upstream
- Perform merge
git merge upstream/master
If you get a text editor window in your bash, that’s just Vi asking for your commit comment for your merge. Don’t have to enter anything, just write “:wq” and you should be good.
If you’re on Windows, install the latest git version and it’ll actually let you set Visual Studio Code as the default text editor.
- Push your local changes to your repository
“Your local changes” = your merge from upstream = all of the new stuff from the original repository on GitHub.
You can perform this step in GitHub Desktop, or by running this in your comsole prompt:
And now you should be good.
- HttpContext.WebSockets.IsWebSocketRequest always null in .NET Core? - July 27, 2021
- Docker-compose fails on Windows with “Error while fetching server API version: (2, ‘CreateFile’, ‘The system cannot find the file specified.’)” - July 20, 2021
- Azure DevOps suddenly 404s for your project? Easy fix! - July 13, 2021