其实网上这类似的教程很多,但是由于每个描述不同,大家接受的方式也不同
有时候我们会发现,在几个月前fork来的代码,在原作者更新后,我们享受不到更新带来的便利。
一般有两种做法,第一种做法可谓简单粗暴,但却不是最好的做法,说明如下:
1.将自己仓库中原来fork的项目删掉 (delete deletethis repository)
,然后在重新到原作者仓库中(fork)
一份最新代码(不推荐方式)
这似乎达到了我们的最终目的,虽然有时候我们做事是为了达到某种目的而不看过程,但不尽然,有时候复杂的的过程
往往会伴随着你意想不到的收获,为什么有人被称之为神(O(∩_∩)O哈哈~,开个玩笑),当然这得看每个人的生活方
式了,总仁者见仁智者见智,这里我不多做赘述。
2.方法是在本地建立两个库的中介,把两个远程库都clone到本地,然后拉取原项目更新到本地,合并更新,最后push到你的github就完成。(推荐方式)
(1)准备一个本地目录,并克隆自己fork的项目到本地。
1
| $ git clone https://github.com/jp1017/FastAndroid.git
|
(2)然后cd 进入仓库(这里我直接进入项目根目录下),执行命令:git remote -v
1
| $ git remote -v
|
(3)我们可以看到,只有我们自己的远程仓库,下面clone原项目到该仓库
1
2
| $ git remote add hunter https://github.com/huntermr/FastAndroid.git
$ git remote -v
|
(4)这个hunter名字随便取哦,这次有两个远程分支咯,我们继续 fetch
然后把原项目更新的内容fetch到本地:git fetch hunter
1
| $ git fetch hunter
|
(5)查看下分支:
1
| $ git branch -av
|
(6)一个本地分支master,三个远程分支,画红线的就是要合并的 merge
1
2
| $ git checkout master
$ git merge hunter/master
|
push
1
| $ git push -u origin master
|
(7)merge后本地的仓库已经是最新的咯,然后push到你的github就同步完成。
1.可能使用到的一些git命令
检查本地仓库git状态 git status
添加仓库修改 git add . (添加所有修改) / git add ~/file(添加具体文件)
确认提交修改 git commit 这里会出现一个面板,里边主要用来说明本次修改的相关信息
检查更新 git checkout
将对本地仓库的修改提交到github仓库 git push -u origin master