Getting started with Open Source Software

Being up-to-date and avoiding conflicts

  • Fork the repository into your account.
  • Clone the forked project on your computer.
git clone git@github.com/myself/forked.git
  • Add the upstream to sync with the new changes to your project.
(master)$ git remote add upstream https://github.com/owner/repo.git# If you run `git remote -v` you should see:
origin git@github.com:myself/forked.git (fetch)
origin git@github.com:myself/forked.git (push)
upstream git@github.com:owner/repo.git (fetch)
upstream
git@github.com:owner/repo.git (push)
(master)$ git fetch upstream master
(master)$ git merge upstream/master
  • Create a new branch.
(master)$ git checkout -b new-branch
  • Once you are done, let’s create a PR!
(new-branch)$ git add . # Add to git your changes
(new-branch)$ git commit -m ‘Type the commit message’
(new-branch)$ git push origin new-branch # Push in forked & origin
  • If you get errors trying to push your last changes, add your SSH credentials.
(master)$ git remote set-url origin git@github.com:myself/forked.git

That’s all!

If your changes (or someone else’s) have been merged in the origin, you need to run fetch upstream master and git merge upstream/master in master to be up-to-date!

To sum up

# Synchronize your local repository to the original one
# Need to run only once the first time
git remote add upstream git@github.com/owner/repo.git
# Get all changes from sync project into upstream branch
git fetch upstream master
# Merge upstream branch into your current branch
git merge upstream/master

--

--

Competitive, entrepreneur and autodidact. Hard worker, lover of technology and free software.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Jesus Valera Reales

Competitive, entrepreneur and autodidact. Hard worker, lover of technology and free software.