碼雲、GitHub如何更新fork後的程式碼
阿新 • • 發佈:2018-11-24
碼雲、GitHub上有個很方便的功能叫fork,將別人的工程一鍵複製到自己賬號下。這個功能很方便,但有點不足的是,當源專案更新後,你fork的分支並不會一起更新,需要自己手動去更新(並且因為要保留自己修改後的程式碼,更不可使用強制更新的方法)。
命令列方法
1、在本地裝好Git客戶端,或者GitHub客戶端
2、clone 自己的fork分支到本地,可以直接使用github客戶端,clone到本地,如果使用命令列,命令為:
git clone [email protected]:Agent_ZhenyuanLiu/AllAgent.git
3、增加源分支地址到你專案遠端分支列表中(此處是關鍵),先得將原來的倉庫指定為upstream,命令為:
git remote add upstream https://github.com/被fork的倉庫.git
此處可使用git remote -v檢視遠端分支列表
4、fetch源分支的新版本到本地
[master]> git fetch upstream
5、合併兩個版本的程式碼
[master]> git merge upstream/master
6、將合併後的程式碼push到github上去
[master]> git push origin master
官方解決辦法: git fetch upstream # Fetches any new changes from the original repository git merge upstream/master # Merges any changes fetched into your working files
GitHub站內操作
- 開啟自己的倉庫,進入code下面。
- 點選new pull request建立。
git clone [email protected]:Agent_ZhenyuanLiu/AllAgent.git
- 選擇base fork
git remote add upstream https://github.com/被fork的倉庫.git
- 選擇head fork
[master]> git fetch upstream
- 點選Create pull request,並填寫建立資訊。
[master]> git merge upstream/master
6. 點選Merge pull request 合併從源fork來的程式碼。
[master]> git push origin master
官方解決辦法: git fetch upstream # Fetches any new changes from the original repository git merge upstream/master # Merges any changes fetched into your working files
7. 完成。
本文部分內容借鑑自:
http://www.cnblogs.com/zyumeng/p/3442263.html
https://blog.csdn.net/qq1332479771/article/details/56087333
https://help.github.com/articles/fork-a-repo
http://www.shizuwu.cn/post/669.html