你有沒有在GitHub上找到一個你喜歡的包,但是想新增一個快速的特性,修復你發現的一個bug,或者僅僅作為一個整體貢獻給開源?加入社會編碼的潮流,分享你的技能,幫助開源世界受益。在本文中,瞭解如何將程式碼貢獻給GitHub上的儲存庫或任何託管的git服務。
本文假設您已經有一個GitHub帳戶,如果沒有,請快速註冊一個免費帳戶。另外,透過在terminal中執行以下命令,確保已安裝git:
git --version如果看到的不是版本號而是“command not found”訊息,則可以使用以下命令安裝git:
sudo apt-get -y install git首先,您必須選擇要參與的儲存庫,並在web瀏覽器中訪問它。如果您不確定要選擇哪個儲存庫,可以使用位於的演示儲存庫https://github.com/mdizak/muo\u演示。這是一個簡單的演示,歡迎您針對它建立pull請求,以便進行測試和學習。
在web瀏覽器中檢視儲存庫時,查詢Fork repository按鈕,然後單擊它。這將把儲存庫轉移到您自己的GitHub帳戶,並將您帶到它。接下來,您需要克隆新分叉的儲存庫,因此在本地計算機上開啟終端並執行:
git clone https://github.com/myusername/muo_demo.gitcd muo_demo當然,請確保將上述URL更改為新分叉儲存庫的URL。克隆後,使用以下命令將原始儲存庫新增為上游儲存庫:
git remote add upstream https://github.com/mdizak/muo_demo.git確保將上述命令中的URL更改為克隆的原始儲存庫的URL。這對git意味著它是您正在處理的父儲存庫。
每次開始處理新貢獻之前,請確保執行的是父儲存庫的最新程式碼庫。在專案目錄中,在終端中執行以下命令:
git checkout mastergit pull upstream master && git push origin master第一個命令確保您當前在主分支中工作,第二個命令將父儲存庫與本地和GitHub儲存庫同步。這可以確保您正在修改最新的程式碼庫,並且不會使用過時的程式碼。
還要確保檢查專案是否有貢獻.md檔案,如果是這樣的話,請確保按照上面說的做。有時專案對於如何提供捐款有具體的指導方針,應該始終遵循這些方針。
您需要建立一個新的分支,該分支將儲存此貢獻的所有修改,這些修改稍後將由專案維護人員合併到主GitHub儲存庫中。分支必須是字母數字的,並且可以根據需要命名。
雖然不是必需的,但通常認為在分支名稱前面加上hotfix/作為快速錯誤修復或feature/作為附加功能的字首是常見的禮貌。選擇所需的分支名稱,然後執行以下命令:
git checkout -b feature/my_cool_feature您應該始終為每個特性/錯誤修復建立一個單獨的分支,並且不要在一個分支中包含多個貢獻。這有助於保持平穩的開發流程,也有助於確保您的貢獻被接受幷包含在專案中。
現在您的分支已經建立好了,請繼續並完成您希望對標準git工作流進行的任何必要修改。
完成貢獻的工作後,使用適當的提交訊息進行提交,並使用以下命令將其推送到分叉儲存庫:
git commit --file commit.txtgit push -u origin feature/my_cool_feature最後一步是建立一個pull請求,警告專案維護人員一個新的貢獻正在等待。訪問web瀏覽器中的forked GitHub儲存庫,您將看到一個下拉按鈕,允許您更改分支。更改為新建立的分支,下一頁將包含一個連結,允許您建立一個新的拉請求。
單擊該連結後,您將看到一個頁面,其中顯示提交訊息以及您在程式碼中所做的所有更改。檢查所有內容以確保其正確,為維護人員新增任何必要的附加訊息,並提交pull請求。
恭喜你,你已經成功地向GitHub專案提交了一份貢獻!
您的pull請求現在正在等待專案維護人員的稽核和批准,並且您將透過電子郵件得到是否批准的通知,以及他們為您提供的任何訊息。既然您已經學會了如何為GitHub上的專案做出貢獻,那麼請繼續前進,並幫助開發開源社群。
關鍵區別–git與github 版本控制系統是一種幫助軟體開發人員協作工作並維護其工作完整歷史的軟體。它可以儲存檔案的更改和原始碼的修改。每次使用者更改專案時,版本控制系統都會獲取專案的狀態並儲存它們。專案的這...
版本控制是程式設計師必須具備的基本技能。GitHub是執行版本控制的比較流行的程式之一,通常透過命令列執行。 ...
... 微軟對開源社群的接納導致微軟在2018年加入了開放發明網路(open inventation Network,OIN)。微軟為此貢獻了6萬項專利。這將有助於保護Linux免受專利訴訟。 ...
...以告訴您儲存庫中有多少內容已經過檢查。這對於與外部編碼人員簽約的團隊尤其有用。 ...
流行的Github站點和git工具都是一個優秀的資源,不僅可以分發和展示您的工作,還可以促進高效和專業的版本控制。 ...
GitHub上有一箇舊專案,不再活動或不再需要?刪除舊儲存庫(repo)將為未來任何潛在的僱主清理您的帳戶,檢視程式碼。這就是怎麼做到的。 刪除github儲存庫之前需要知道的內容 如果您是組織所有者或具有管理許可權,則...
無論您是要開始一個全新的軟體專案,還是希望在GitHub上使用“文件即程式碼”的方法來處理文件,第一步就是建立一個儲存庫(repo)。這是怎麼做到的。 為什麼要建立github回購? Git是一個開源的分散式版本控制系統,允...