如何在GitHub上進行首次Pull Request
如何在GitHub上編輯項目並創建PR呢? 關於這個主題有很多教程,但許多教程過於複雜,它們假設你必須為項目做出代碼貢獻,所以還有一些git設置。 如果你只需要編輯一個文件,比如修正項目的README中的拼寫錯誤呢? 你不需要知道如何編程或如何使用Git來完成這個操作。但是,一旦你開始進行Pull Request,你就可以進行更多事情並與其他人協作項目!也許這會激勵你在以後貢獻代碼。 假設你已經有一個(免費)GitHub帳號。如果沒有,請訪問github.com生成一個。 讓我向你展示整個流程。 我找到了一篇可能有拼寫錯誤的文章,該文章存在於這個頁面:https://web.dev/prefers-color-scheme/ 我知道該網站是托管在GitHub上的,具體該文章位於這裡:https://github.com/GoogleChrome/web.dev/tree/master/src/site/content/en/blog/prefers-color-scheme 我直接在GitHub上打開index.md文件https://github.com/GoogleChrome/web.dev/blob/master/src/site/content/en/blog/prefers-color-scheme/index.md,然後按文件工具欄中的鉛筆圖標。將鼠標懸停在圖標上會顯示“Fork this project and edit the file”。 這將打開一個編輯器界面,顯示以下信息: 你正在編輯一個你沒有寫權限的項目中的文件。將提交對這個文件的更改,將它寫入你的fork flaviocopes/web.dev 的一個新分支中,然後你可以發送一個pull request。 我在文件中添加了那個句號,然後在底部的表單中解釋了我所做的更改: 我點擊了“Propose File Change”按鈕,然後顯示了一個比較視圖: 在這裡,我可以查看我所做的更改,確保一切都正常,最後我可以點擊“Create Pull Request”按鈕。目前這些更改已經發生在你fork的項目上,當你點擊鉛筆圖標時,GitHub會自動創建你的fork。 在這個視圖的頂部,你可以看到我正在將一個PR提交到GoogleChrome/web.dev項目,從我的fork flaviocopes/web.dev的分支patch-2到他們的master分支。 點擊“Create Pull Request”按鈕會顯示另一個表單,在這裡我可以為Pull Request撰寫詳細的描述。 Pull Requests可以包含多個不同的更改,理論上你可以在同一個PR中編輯許多文件,這就是為什麼你可以添加摘要。 這個倉庫有一個用於PR文本的模板,以幫助團隊管理它。我們的PR非常簡單,所以我移除了模板,只是將之前提交消息中的內容粘貼了過來。 右邊的提示看到了嗎?他們告訴我這個項目有一個CONTRIBUTING.md文件,其中解釋了如何參與貢獻和遵守的準則。非常酷。 看起來我們需要簽署一個CLA(貢獻者授權協議)來完成我們的PR。我過去已經簽署了Google的CLA,所以對我來說這一步很清楚,但你可能需要處理這個。大多數項目實際上不需要它。 我點擊“Create pull request”,PR現在已經提交! 現在由項目維護者來接受,你只需要等待一封郵件告訴你它是否被合併,或者其他人是否有評論。 […過了幾個小時…] 我收到了一封郵件,該PR被拒絕了,因為那個句號實際上是在正確的位置上!(我不知道) 但無論如何,這是我想要添加的一個事情:如果你提交的PR不被接受,不要生氣或沮喪。項目的維護者可能花了好幾個月或幾年的時間,他們對於項目的了解比你更多。 此外,特別是對於代碼而言,觀點可能非常不同,你認為很好的PR可能不被歡迎。 最好在進行實質性PR之前先詢問,看看項目是否真的需要這樣的改變。 但這是另一個話題。