學習如何復刻一個倉庫,進行更改,並要求維護人員審查並合併它。
你知道如何使用 git 了,你有一個 GitHub 倉庫並且可以向它推播。這一切都很好。但是你如何為他人的 GitHub 專案做出貢獻? 這是我在學習 git 和 GitHub 之後想知道的。在本文中,我將解釋如何復刻一個 git 倉庫、進行更改並提交一個拉取請求。
當你想要在一個 GitHub 專案上工作時,第一步是復刻一個倉庫。
你可以使用我的演示倉庫試一試。
當你在這個頁面時,單擊右上角的 “Fork”(復刻)按鈕。這將在你的 GitHub 使用者賬戶下建立我的演示倉庫的一個新副本,其 URL 如下:
https://github.com/<你的使用者名稱>/demo
這個副本包含了原始倉庫中的所有程式碼、分支和提交。
接下來,開啟你計算機上的終端並執行命令來克隆倉庫:
git clone https://github.com/<你的使用者名稱>/demo
一旦倉庫被克隆後,你需要做兩件事:
1、通過發出命令建立一個新分支 new_branch
:
git checkout -b new_branch
2、使用以下命令為上游倉庫建立一個新的遠端:
git remote add upstream https://github.com/kedark3/demo
在這種情況下,“上游倉庫”指的是你建立復刻來自的原始倉庫。
現在你可以更改程式碼了。以下程式碼建立一個新分支,進行任意更改,並將其推播到 new_branch
分支:
$ git checkout -b new_branchSwitched to a new branch ‘new_branch’$ echo “some test file” > test$ cat testSome test file$ git statusOn branch new_branchNo commits yetUntracked files: (use "git add <file>..." to include in what will be committed) testnothing added to commit but untracked files present (use "git add" to track)$ git add test$ git commit -S -m "Adding a test file to new_branch"[new_branch (root-commit) 4265ec8] Adding a test file to new_branch 1 file changed, 1 insertion(+) create mode 100644 test$ git push -u origin new_branchEnumerating objects: 3, done.Counting objects: 100% (3/3), done.Writing objects: 100% (3/3), 918 bytes | 918.00 KiB/s, done.Total 3 (delta 0), reused 0 (delta 0)Remote: Create a pull request for ‘new_branch’ on GitHub by visiting:Remote: <http://github.com/example/Demo/pull/new/new\_branch>Remote: * [new branch] new_branch -> new_branch
一旦你將更改推播到您的倉庫後, “Compare & pull request”(比較和拉取請求)按鈕將出現在GitHub。
單擊它,你將進入此螢幕:
單擊 “Create pull request”(建立拉取請求)按鈕開啟一個拉取請求。這將允許倉庫的維護者們審查你的貢獻。然後,如果你的貢獻是沒問題的,他們可以合併它,或者他們可能會要求你做一些改變。
總之,如果您想為一個專案做出貢獻,最簡單的方法是:
如果審閱者要求更改,請重複步驟 5 和 6,為你的拉取請求新增更多提交。
快樂編碼!