Github上经典的fork+pull request模式可以很容易的让你参加到github上的开源项目,但是,如果主项目有更新,这个时候怎么把主项目的更新合并到自己Fork的版本中呢?到目前为止,github没提供一个按钮来完成这个功能。
下面我以druid(https://github.com/AlibabaTech/druid)来做一个git update fork的示范。
首先先fork druid到自己的github中。
克隆到自己本地的计算机。(read only)
用git clone git@github.com:luffyke/druid.git for write and read access
然后通过git remote add命令添加一个远程仓库以便从主项目来拿最新的源代码,可以git remote来查看是否添加成功。
这里我添加了一个叫kxt的远程仓库。
接下来我们要用git fetch命令从远程仓库抓去数据到本地,fetch命令会到远程仓库中拉取本地仓库中还没有的数据,运行完成后,我们就可以在本地访问远程仓库的所有分支。
接下来就是将拉取的数据合并到本地来。
很久没更新过,数据太多了,把屏幕都填满了。
然后运动 git merge kxt/master
这样你本地的仓库就是最新的了。
如果想让github上fork的项目也保持最新,可以用git push origin master命令更新版本库。
完。