GitHub Pull Request 初體驗

之前也用過github管理過自己的項目,但沒有參與過他人的開源項目,這次有機會參與他人的項目,根據(jù)要求,需要為該項目提供一篇文章,并發(fā)起Pull Request,僅以此文記錄。

什么是Pull Request ? 請參考知乎高票回答:GitHub 的 Pull Request 是指什么意思?

好了,正式開始。

1、首先,我們要參與他人的開源項目,并為之做貢獻,首先需要 Fork 對方的項目。為什么呢?很好理解,因為你沒有權限直接去修改別人的代碼。所以,需要先 Fork 對方的項目,那樣你自己的GitHub賬號上,就有了一份該項目的備份。本文中,我們需要 Fork 的是 TrueChain/wiki 項目:
1.png
2.png

圖2顯示的就是開源項目TrueChain/wiki ,點擊右上角的 Fork 按鈕,那樣我們自己的賬號上就有了備份:
3.png

圖3左上角的信息,顯示了我自己的GitHub賬號下的wiki,以及該 wiki 從何處 Fork 而來。

2、接著,我們需要把我們自己賬號下的這個 wiki 項目 clone 到本地倉庫,然后在本地倉庫進行操作,最后提交到我們賬號下的遠程倉庫 wiki 。

2.1 在電腦上新建文件夾 Fairy , 打開終端,cd 進這個文件夾,然后把我們自己賬號下的這個 wiki 項目 clone 到 Fairy 文件夾。
4.png
2.2 參加開源項目的時候,要養(yǎng)成好習慣,為特定的功能新建分支。我在這里新建了一個 yyg_branch 分支,并切換到了此分支。下面,我需要在 wiki 項目中的 task_list/task_20180601 目錄下,新增一個文件。有兩種做法,一種是繼續(xù)使用終端命令行,切換到該目錄,新建文件;另外就是直接電腦上建好文件,然后拖到我們本地倉庫 Fairy 文件夾中 wiki 項目下的 task_list/task_20180601 目錄。我用的是后一種方法。
2.3重新回到終端,輸入status命令查看工作區(qū)的變化,發(fā)現(xiàn)文件已經(jīng)添加進來了,然后使用add和commit命令,把新增的文件提交到本地倉庫。
5.png
2.4 把本地倉庫的改動,用push命令推送到我們的GitHub賬號下的wiki 遠程倉庫。這里遇到個突發(fā)情況,push 失敗,提示說:remote : Permission to YangYegao/wiki.git denied to Zhaoran521。what ?黑人問號臉。原來,我之前使用過別的GitHub賬號 Zhaoran521 提交過代碼,而我用的是mac電腦,mac電腦有個keychain的應用即鑰匙串訪問,這里存儲了github先前訪問的密碼,所以每次push的時候都會讀取這個本地用戶名及密碼,我的 git 操作是要 push 到 YangYegao/wiki.git,但電腦讀取的賬號信息是Zhaoran521,不匹配,所以報錯。這個解決方案其實很簡單:打開Finder ----> 應用程序 ---->實用工具 ---->鑰匙串訪問 ---->雙擊,即可進入到鑰匙串訪問記錄保存頁面,選擇github.com名稱的應用,右鍵刪除即可。最后,回到終端,再次push代碼,會提示重新輸入用戶名及密碼,輸入github賬號及密碼即可。
6.png

3、提交成功后,回到我們的GitHub頁面,發(fā)現(xiàn)頁面刷新了,變成這樣:提示我們GitHub賬號下的wiki 遠程倉庫,與開源項目TrueChain/wiki相比,存在不同:
7.png

4、點擊 Compare & pull request 按鈕,跳轉到下圖所示界面:
8.png
填寫相關資料,點擊“Create pull request”按鈕,即可發(fā)起本文開頭提到的 Pull Request。剩下的事情,就是開源項目管理者的事情了,他會收到我們的 request ,然后他會根據(jù)自己的情況來處理這個request。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容