本篇文章由Git教程欄目給大家介紹Git在如何設(shè)置不相同的fetch和push地址的,有需要的朋友可以收藏學習哦~希望對大家有幫助。
一般情況下,如果是一個人用 Git 開發(fā),不需要代碼 review 啥的,fetch 和 push 都一個地址就夠了,反正也不需要 review,也不會有人覆蓋你的代碼。
但是在公司里面,或者正規(guī)的代碼合并流程,都會有 review 的環(huán)節(jié),大概是:
-
fork 主倉庫到個人倉
-
clone 個人倉到本地
-
修改本地代碼并提交 commit
-
push 修改到個人倉
-
提交 Merge Request 到主倉庫
如果主倉庫有更改,還需要另外一步:
-
從主倉庫同步更改,也就是手動 pull
那么,如何設(shè)置個人倉為 push 地址,而設(shè)置主倉庫為 pull 地址呢?
方法一:多個 origin
第一種方法是,在原 origin 遠程倉庫地址的基礎(chǔ)上,再加一個地址,也就是主倉庫地址,例如加一個origin_mian,如下:
git remote add origin_main git@github.com:yeszao/dnmp.git
登錄后復制
這樣我們總共就配置了 4 個地址,2 個 push 和 2 個 pull:
git remote -v origin git@github.com:MY_REPOSITY/dnmp.git (fetch) origin git@github.com:MY_REPOSITY/dnmp.git (push) origin_main git@github.com:yeszao/dnmp.git (fetch) origin_main git@github.com:yeszao/dnmp.git (push)
登錄后復制
在推拉代碼的時候就可以這樣:
git push origin master git pull origin_main master
登錄后復制
方法二:一個 origin(推薦)
另外一種辦法就是,我們只用一個 origin,設(shè)置主倉庫為 fetch 地址,個人倉庫為 push 地址:
git remote set-url origin git@github.com:yeszao/dnmp.git git remote set-url --add --push origin git@github.com:MY_REPOSITY/dnmp.git
登錄后復制
再用 git remote 命令看看配置的地址:
origin git@github.com:MY_REPOSITY/dnmp.git (push) origin git@github.com:yeszao/dnmp.git (fetch)
登錄后復制
這樣推拉代碼就 很簡單了:
git push origin master git pull origin master
登錄后復制
如果沒有特別的要求,推薦使用方法二,用法和命令都更加簡單。