git使用之五——Github上fork项目后与原项目保持同步

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917
博客园: 追风917

git使用之一——git的基本使用
git使用之二——.gitignore文件详解
git使用之三——.git文件夹详解
git使用之四——windows下github桌面版的安装
git使用之五——Github上fork项目后与原项目保持同步
git使用之六——github协同工作的Fork+Pull Request
git使用之七——Android Studio下git的正确使用

问题由来


前几天在github上fork了个项目,今天发现了问题,原作者更新了代码,我的没变样,于是再次fork,仍然没有更新,郁闷了,网上搜索,发现遇到这问题的小伙伴不少呢,然后在此记录下,以便后面遇到同样问题的小伙伴可以迅速解决问题。

解决


1 重新fork

这里的fork不是说你直接点fork,这样是没用的,你要从你的仓库里删除fork来的项目,然后重新fork,这个姿势不大好。。。

2 正确方式

方法是在本地建立两个库的中介,把两个远程库都clone到本地,然后拉取原项目更新到本地,合并更新,最后push到你的github就完成。

clone

我准备在e盘下建立这个中介,就是本地仓库了,进入e盘,右键,git bash打开控制台,clone自己的远程仓库:

$ git clone https://github.com/jp1017/FastAndroid.git

然后cd fastandroid,进入仓库,执行命令:git remote -v

$ git remote -v 

我们可以看到,只有我们自己的远程仓库,下面clone原项目到该仓库

$ git remote add hunter https://github.com/huntermr/FastAndroid.git
$ git remote -v

这个hunter名字随便取哦,这次有两个远程分支咯,我们继续

fetch

然后把原项目更新的内容fetch到本地:git fetch hunter

$ git fetch hunter

查看下分支:

$ git branch -av

一个本地分支master,三个远程分支,画红线的就是要合并的哦

merge

$ git checkout master
$ git merge hunter/master

push

$ git push -u origin master

merge后本地的仓库已经是最新的咯,然后push到你的github就同步完成。

3 github桌面版

这个需要借助github桌面版,windows下的安装参考我的另一片博文:git使用之四——windows下github桌面版的安装

安装好后,clone到本地,然后点下sync,这样本地的就更新了哦,然后电脑下github,就同步了。

搞定。

enjoy!

悦分享,越快乐^_^

欢迎交流,转载请注明出处,谢谢!

你可能感兴趣的:(git)