fork 了开源项目以后,开源项目会更新新的代码,自己也会更新一些代码。有些代码可能也会用的到。
比如一个 bbs 类网站,开源版本会不停的修改问题,添加新功能。fork 后的代码也会提交新的代码。
面对这样情况的时候大家是如何做的,希望大家分享一下自己的经验。
fork 只有你可以认为就是你开了一个新的分支。可以把一些想要的 commit 合并到你的 fork 分支
我暂时是这么做的:
# A_REPOSITORY_URL为你fork的开源项目 git remote add upstream A_REPOSITORY_URL # pull upstream的相应分支(比如master) git pull upstream master # 最后push回github上自己的repo git push origin master
似乎能满足 LZ 的需求
#2 楼 @night_7th @tiseheaini
二楼的做法是正确滴 但是第二步我建议使用 fetch . 然后 merge 自己想要的 不喜欢 pull 的自动 merge
$ git clone https://github.com/youname/ruby-china.git $ git remote add ruby-china https://github.com/ruby-china/ruby-china.git $ git remote origin # 你的 ruby-china # 官方的 $ git fetch ruby-china $ git checkout master $ git rebase ruby-china/master -i
#1 楼 @hging #2 楼 @night_7th #3 楼 @so_zengtao #4 楼 @huacnlee 谢谢大家的回复,回复的速度有点慢。
一向是用 rebase 的。从上游拉代码用 rebase,完成功能用 merge。
#6 楼 @msg7086 rebase +1