[repost ]Github update fork

original:http://my.oschina.net/luffyke/blog/70336

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命令更新版本库。

完。