问题
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.
回答1:
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
回答2:
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...
回答3:
Syncing a fork
(from GitHub Help)
https://help.github.com/articles/syncing-a-fork
回答4:
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.
来源:https://stackoverflow.com/questions/867831/merge-changes-from-remote-github-repository-to-your-local-repository