fork是乙個複製的操作,當你fork乙個專案之後,你就有了在原專案的基礎之上進行修改和擴充套件的許可權。
通常情況下,fork操作用於參與別人的專案(成為專案中的一員),或者以別人的專案為基礎來開發自己的專案。
當你使用乙個開源專案的時候,如果專案中存在bug,除了可以將bug報告專案開發人員。你也可以通過fork原專案,並參與進來。
在github中,fork乙個開源專案主要有兩步:
查詢到你想要fork的專案;
點選專案介紹頁面右上角的fork;
當你fork乙個專案之後,你的專案與原專案之間就不存在聯絡了,當原專案有更新的時候,你自己fork的專案也不會同步保持更新。為了保持與原專案的一致,你需要使用到git的命令列。
第一步 安裝git客戶端
第二步 clone你fork的專案
fork乙個專案, 官方示例:
使用git命令列clone專案:git clone git@github:[yourname]/spoon-knife
第三步 新增新的遠端倉庫位址
當你clone完乙個專案,可以使用git remote -v
來檢視你fork的遠端倉庫的位址;預設的clone操作完成後,遠端倉庫的位址別名為:origin
,為了需要與原專案保持更新,你還需要將原專案位址給新增進來,使用命令:git remote add upstream [email protected]:octocat/spoon-knife.git
可以新增遠端倉庫位址,其中upstream為新的遠端倉庫的別名。
第四步 同步更新
假設你已經完成了前三步,當原專案有更新的時候,怎麼將更新檢入到本地吶,主要是以下幾個步驟:
開啟git命令列工具;
進入專案本地路徑;
執行git fetch upstream
命令,檢出upstream分支以及各自的更新;
切換到你的本地分支主幹:git checkout master
;
合併upsteram/master
分支和master
分支,將原專案中的更改更新到本地分支,這樣就能使你的本地的fork分支與原專案保持同步,命令:git merge upstream/master
;
執行git push
將本地分支的修改推送到遠端fork的專案;
github fork專案同步更新
專案使用umi sula的開源專案,遇到乙個bug,本地修復提交merge請求之後,想同步更新sula的最新 到本地fork的專案。可以看到sula在merge專案之後又有新的提交,所以fork的 就想更新到最新的。步驟1 git remote add upstream xgit remote ad...
github fork專案和原專案同步
前提是自己已經設定好了git,並且配置了相應的許可權 然後使用git clone命令在本地轉殖自己 fork 的專案 git clone切換到自己之前轉殖的專案的路徑下,使用 git remote v 就可以看到當前專案的遠端倉庫配置origin fetch origin push 然後使用下面的命...
在github fork的專案中推送與抓取
github fork提交專案 自己的倉庫和原倉庫進行git同步的操作。1.獲取你fork的原倉庫的更新過的最新 如果沒有遠端原始分支則需要增加。git remote add upstream git github.com parrotsdl parrots.git git fetch upstre...