Git 把碼雲上被fork項目源碼merge到fork出來的分支項目


Git 把碼雲上被fork項目源碼merge到fork出來的分支項目

 

 

 

By:授客 QQ1033553122

 

需求描述

被fork的項目有更新代碼,希望把更新的代碼merge到fork分支項目

 

解決方法

1、clone fork分支項目到本地,並入切換當前分支為目標分支。

 

2、增加被fork項目源碼倉庫地址到你項目遠程分支列表中),並將該倉庫地址命名為upstream(當然也可以是其它),如下:

git remote add upstream https://github.com/srcRepo.git

 

其中 srcReop為被fork項目

 

3、取回遠程主機被fork項目的全部更新

git fetch upstream

 

當然,也可以指定只取回目標分支

git fetch upstream remoteTargeBranch

 

4、合並取回的目標分支(例中為master)代碼到本地當前分支

git merge upstream/master

 

至此,完成了本地代碼的合並,接下來只需要push到fork項目的目標分支即可。

 

步驟3,步驟4也可以直接使用pull命令替代,合並為一個步驟,如下

git pull upstream master

 

實例

(例中使用ssh訪問倉庫)

 

進入對應項目的 git bash后執行的以下命令

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$ git remote add upstream git@gitee.com:xxxx/CassTestManage.git

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$ git remote -v

origin  git@gitee.com:laiy/CassTestManage.git (fetch)

origin  git@gitee.com:laiy/CassTestManage.git (push)

upstream        git@gitee.com:xxxx/CassTestManage.git (fetch)

upstream        git@gitee.com:xxxx/CassTestManage.git (push)

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$ git pull upstream master

remote: Enumerating objects: 64, done.

remote: Counting objects: 100% (64/64), done.

remote: Compressing objects: 100% (63/63), done.

remote: Total 64 (delta 0), reused 58 (delta 0)

Unpacking objects: 100% (64/64), done.

From gitee.com3:xxxx/CassTestManage

 * branch            master     -> FETCH_HEAD

 * [new branch]      master     -> upstream/master

Merge made by the 'recursive' strategy.

 mytest.txt | 1 +

 1 file changed, 1 insertion(+)

 create mode 100644 mytest.txt

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$

 

說明

第二次開始,可以通過git客戶端界面進行代碼的合並操作,非常簡單,如下指定遠程主機和要pull的分支即可。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM