GitHub Fork的代码更新方法

用户可以很方便的从别的仓库中复制一份代码(Fork)到自己的名下。但是有一个不足是GitHub并不提供自动更新功能,那么此时就需要我们自己手动更新这个Fork仓库代码。

具体步骤

1、安装 GitHub客户端 或者 Git

2、clone 需要更新的 Fork 分支到本地

1
git clone git@github.com:yourname/repos.git <yourfolder>

3、将源分支添加到该仓库的远程分支中

1
git remote add upstream git@github.com:author/repos.git

此时可以使用 git remote -v 查看远程分支列表,结果如下:

1
2
3
4
upstream git@github.com:author/repos.git (fetch)
upstream git@github.com:author/repos.git (push)
origin git@github.com:yourname/repos.git (fetch)
origin git@github.com:yourname/repos.git (push)

4、fetch 源仓库代码的最新版本到本地

1
git fetch upstream   #这里的`upstream`是上面从源分支添加到远程分支的分支名

这里是从上游仓库fetch分支和提交点,提交给本地master,并会被存储在一个本地分支upstream/master

5、合并两个版本的代码

1
git merge upstream/master

这里把upstream/master分支合并到本地master上,这样就完成了同步,并且不会丢掉本地修改的内容。

6、更新到GitHub的fork上

1
git push origin master

只用GitHub,不用命令行操作步骤

这里看到源项目已经领先我Fork的项目84个commit了,所以首先点击图中的Pull request

由于这里没有修改,所以这里是空的,下面点击图中的switching to base

下面点击Create Pull request

这里给这个pull request取一个名字:

然后点击Merge,最后confirm即可:

参考:gitlab或github下fork后如何同步源的新更新内容?

赞赏一杯咖啡
0%