Push changes to your remote repository: git push origin new_feature. Sync dev branch: git checkout new_feature, git merge master. Pull new changes from remote: git checkout master, git pull upstream master.Make desired changes to the local repository on this branch.Checkout a new branch (here called “new_feature”): git checkout -b new_feature.Add remote called “upstream” pointing to the original repository: git remote add upstream.
The workflow comprises the following steps which are described in more detail in the subsequent sections: I wanted to document my simple approach to this workflow here (for reference by my future self and others). For this, we typically use the “fork-and-branch” workflow. I particularly feel this way when wanting to contribute to others' open-source projects on GitHub. However, if your anything like me, using these tools sometimes feels like a bit of a black box, nicely summarised by this xkcd comic: I primarily use Git and GitHub for my open-source work.