GitHub Desktop version information

Note to self: How to sync from the original repo on GitHub (Git merge upstream)

Reading Time: 2 minutes.

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 document it – but since I don’t do that much development with the full “fork – clone – branch – submit pull request” -process (whic 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 still 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:

How to synchronize your forked and local repositories with the original one on GitHub?

There’s a number of steps – see below.

  • Open Git Bash
  • Change the current working directory to your local project.
    cd [your_directory]
  • Change to your desired branch
    • You’ll probably want to merge to your master – so make sure your branch is “master”.
    • 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)
    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.
  • Push your local changes to your repository
    • You can do this in GitHub Desktop
    • Or by running this:
      git push

And now you should be good.

References

Antti K. Koskela

Antti Koskela is a proud digital native nomadic millennial full stack developer (is that enough funny buzzwords? That's definitely enough funny buzzwords!), who works as a Solutions Architect for Valo Intranet, the product that will make you fall in love with your intranet. Working with the global partner network, he's responsible for the success of Valo deployments happening all around the world.

He's been a developer from 2004 (starting with PHP and Java), and he's been bending and twisting SharePoint into different shapes since MOSS. Nowadays he's not only working on SharePoint, but also on .NET projects, Azure, Office 365 and a lot of other stuff.

This is his personal professional (e.g. professional, but definitely personal) blog.
mm

Leave a Reply

avatar
5000
  Subscribe  
Notify of