Git 执行 「fork 出来的仓库」和「最新版本的原仓库」内容同步更新

当我们在 GitHub 上 fork 出一个仓库后,如果原仓库更新了,此时怎样才能保证我们 fork 出来的仓库和原仓库内容一致呢?我们一般关注的是仓库的 master(主干分支)的内容,通过以下步骤来保证他最新就可以了。

 

前期准备:

可以使用源码管理可视化工具(客户端)来管理源码,例如「SourceTree」「GitHub Desktop」「Cornerstone」

 

这里我们使用「SourceTree」克隆「fork 出来的仓库」,以 AFNetworking 仓库为例进行介绍

 

 

步骤:

1、添加一个远程仓库,此时只是空壳,还没有同步内容,引用 fork 的原仓库地址

git remote add originUpstream https://github.com/AFNetworking/AFNetworking.git

2、commit(提交)本地的变更;如果本地没有修改内容,此步骤可忽略

git commit

3、更新远程仓库,从引用 fork 的原仓库地址同步内容,此时原仓库的 master(主干分支)已经可以在本地访问了

git remote update originUpstream

4、checkout(检出)用于操作的本地分支 ,比如 master;如果此时分支为已检出状态,此步骤可忽略

git checkout master

5、直接从远程仓库的分支 pull(拉取) 数据

git pull originUpstream master

PS:或者本地已检出分支基于远程仓库的分支进行 rebase(变基)操作

git rebase originUpstream/master

6、把本地已检出分支的已提交数据 push(推送) 到自己 fork 的仓库中

git push origin master

 

posted @ 2015-10-22 00:48  KenmuHuang  阅读(11263)  评论(0编辑  收藏  举报
如果您看完本篇博文,觉得对您有所收获,请点击右下角的 [推荐]
如果您想转载,请注明出处(原创内容,请尊重个人劳动成果)
如果您有任何意见或建议,欢迎留言
感谢您的阅读,敬请关注我的后续博客文章