當前位置:
首頁 > 知識 > 玩轉 GitHub 更新Fork

玩轉 GitHub 更新Fork

責編 | 郭芮    首發 | CSDN


本文介紹如何

在GitHub上更新Fork以及PullRequest給源項目。

在GitHub上更新Fork

經常遇到的是Fork一個項目之後,源項目的作者做了新的更改,如果沒有同步到我自己的Fork,我所做的更新進行Pull Request後,會產生衝突;因此在更新文件之前、至少是Pull Request之前,應當要更新自己的Fork的。



更新Fork的方法有很多,Git寫代碼是很好的,當小白通常比較難做,步驟缺了就經常不奏效;所以我自己親測了一個GitHub上更新Fork的方法,做一個教程,與朋友們共勉;廢話少說,步驟如下。



一、進入自己Fork來的項目,按New Pull Request按鈕,新建一個Pull Request(簡稱:PR)。


二、如果自己還沒有修改過Fork項目的文件,那麼此時可以點擊switching the base,切換到基於我自己的Fork項目。



如果已經修改或更新過Fork項目的文件,那麼可以通過選擇Base Fork和Head Fork來從源項目更新到我自己的Fork項目。



這裡有個小技巧:在默認狀態下,會是Base源項目,Head我自己的Fork項目;這樣選擇任何一個時,會調到某個無法更新的頁面;解決方法是先Base或Head一個其他人的賬號下的Fork,接著選擇Head/Base源項目或我自己的Fork項目,這樣就不會出現Base和Head都是自己或者都是源項目的情況。

三、Base和Head設置完,就進入Comparing Changes頁面,確認一下Base和Head,以及最新的更新內容。



內容沒問題就Create PR了,即上圖綠色箭頭所指向的綠色按鈕;接著輸入主題,Create。


四、新Create的PR在哪裡可以找到呢?進入我自己的Fork項目,導航條上的PR進入,看到Open的有一個,就是剛才更新的。



點擊進入確認一下。



五、把源項目的更新Merge到我的Fork項目。



Confirm Merge,確定這個更新;



可以看到,這個PR已經更新完成,呈紫色的Merge狀態。

六、最後驗證一下是否更新到最新的項目,因為已知是更新了Pattern Recognition,所以直接進入。



查看到下面5個是最新修改的,15個小時之前修改了內容。

至此整個更新Fork的方法步驟已完成,玩得愉快!



將更新的Fork項目PullRequest給源項目

我們Fork項目之後進行了修改或添加新文件,需要Pull Request(簡稱:PR)給源項目,讓作者Merge融入到他的源項目里。



在PR之前,甚至開始修改或創建新文件之前,先看看源項目是否有更新,如有更新,可按第一部分內容,先更新自己的Fork項目,再做創建新文件,老司機說這樣衝突比較少。



一、看到別人的好項目,如何「據為己有」?Fork一下咯!

點擊Fork,會進入Fork進行中的界面;



Fork完成後,可以在自己的主頁(Your Profile)看到Fork的項目。



二、可以通過Create new file或upload file新建或上傳文件,要注意的是:上傳的文件會把原來同名文件覆蓋掉!


這裡的會有文件上傳的進度條,如下圖:共13個文件,已上傳9個;上傳完成的文件會在下方顯示。



這個上傳文件由於伺服器在國外的緣故,死慢死慢,經常就廢了,如下圖。

當看到下面這個Processing your files…頁面,那就恭喜你了,經過幾十次的上傳,總算work了;如果出現一片空白的頁面,那麼只好重複choose your files,再次Confirm Changes。



三、新建PR:可以在Fork項目的根目錄下,或者任意的目錄下,Pull Request。


Pull Request後會進入Comparing changes頁面,核對一下Base Fork和Head Fork(藍色圓圈)、以及更新的內容(紫色方框);由於已經更新過最新的源項目內容,與源項目同步好了,所以此時顯示「Able to merge」(紅圈綠字);一切就緒,點擊Create創建PR。



輸入主題,並Create PR;

這時可以看到已經將這個更新PR給源項目作者,PR序號為#52,狀態open。



四、源項目作者Merge此PR,將此次的更改融入到源項目,並形成Commits記錄。



序號#52的PR已經Merge:

進入源項目,查看Commit記錄:




至此,整個Fork、修改或創建文件、Pull Request以及Merge的步驟已完成,玩的愉快!



推薦閱讀



下載 | 512頁教程《神經網路與深度學習》,2018最新著作


必備 | AI & DS七大 Python 庫


下載 | 954頁《數據可視化》手冊


知識點 | 全面理解支持向量機


下載 | 866頁《計算機視覺:原理,演算法,應用,學習》第五版


教程 | 106頁《Python進階》中文版



下載 |  479頁《數據科學基礎》教程


教程 | Vim 教程【命令-操作-快捷鍵】


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!

TAG: |