Question

I have forked a repository on github some time ago, made a small change and pushed the change back to my github fork. The original repository has changed since. I would like to merge the changes from the original repository to my fork.

I am new to both git and github, and I need specific commands how to do it.

Was it helpful?

Solution

git remote add {name} {Public Clone URL}
git pull {name} master
git push

Example:

git remote add bret git://github.com/bret/watir.git
git pull bret master
git push

OTHER TIPS

Simply add original repo as a remote and merge your fork with it; then push merged fork to github.

There's also a ruby gem for easier github operations. You can merge upstream with one call...

Syncing a fork

(from GitHub Help)

https://help.github.com/articles/syncing-a-fork

git pull origin master

will do the job creating additional merge commit. If you do not have conflicts and do not want to create a rejoin (with additional 'merge' commit) for every commit that you push then rebase is more preferred. You can do it with the Git Gui+gitk. Just fetch remote with Git Gui then open history with gitk and create temporary r_master branch at remotes/origin/master fetched. Finally, call git rebase r_master in the git bash. This will place your commits on top of the remote modifications. You are ready to push and remove the r_master.

This comment suggests that there are shortcuts for this flow.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top