GitLab-更新Fork出来的专案

在 GitLab 的介面上,可以透过Fork的功能,把别人的专案建立一个 fork 到自己的帐号底下,
例如原始专案的网址是 http://gitlab/userA/project.git
Fork出来的专案网址会是 http://gitlab/userB/project.git
不过原始专案仍然会继续更新,而自己Fork下来的专案则会停在执行Fork当时的状况。

1.git clone Fork出来的专案路径

$ git clone http://gitlab/userB/project.git

2.git remote 操作前后先看状态

$ git remote -v

预设应该只会有 origin 这个 remote:

originhttp://gitlab/userB/project.git (fetch)
originhttp://gitlab/userB/project.git (push)

3.git remote add 新增upstreamupstream 是 remote name,可以自己取名,不要重複就好

$ git remote add upstream http://gitlab/userA/project.git$ git remote -v

再看一次现有的remote应该会发现多了两组upstream(fetch & push):

originhttp://gitlab/userB/project.git (fetch)
origin http://gitlab/userB/project.git (push)
upstream http://gitlab/userA/project.git (fetch)
upstream http://gitlab/userA/project.git (push)

有了原始专案的来源后我们就可以开始做更新了

4.切换回本地的master

$ git checkout master

5.接着把upstreammaster更新给拉进来

$ git pull upstream master

6.切换到开发用的分支rebase自己的master

$ git checkout branch_name$ git rebase master

7.如果自己的mastercommit,也可以用rebase来避免不必要的merge操作

$ git checkout master$ git pull --rebase upstream master

8.如果没有发生冲突的话这样应该就完成了本地的更新,再把更新后的 branch push 出去就行了

$ git push origin master

这时再回去看看自己的专案页面,应该会发现已经同步到最新的状态了!

PS.修改remote名称

git remote rename {oldName} {newName}

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章