github 修改项目为public_在GitHub上为开源项目做贡献
git已經(jīng)是多人協(xié)作coding的標(biāo)配,GitHub上有很多開(kāi)源項(xiàng)目,由一些人進(jìn)行維護(hù),還有更多的人為其貢獻(xiàn)代碼,對(duì)某個(gè)開(kāi)源項(xiàng)目貢獻(xiàn)代碼大概可以分為下面幾個(gè)步驟:
1,fork一份自己的repo
給開(kāi)源項(xiàng)目貢獻(xiàn)代碼并不能直接commit,而是需要先f(wàn)ork到自己的倉(cāng)庫(kù)下面,然后提PR(Pull Request),經(jīng)過(guò)各種測(cè)試以及code review沒(méi)有問(wèn)題之后,開(kāi)源項(xiàng)目的管理員才會(huì)將其merge到代碼庫(kù)中
以terminal為例,直接按一下右上角的fork就可以了
fork之后會(huì)在自己的repo下面出現(xiàn)這個(gè)倉(cāng)庫(kù),這相當(dāng)于是一份鏡像(注意不會(huì)隨著fork源的更新而更新)
2,將fork的repo clone到本地,修改代碼后push到fork的repo里面
直接git clone到本地
clone到本地之后還需要將fork源添加到remote(通常命名為upstream),及時(shí)同步其他貢獻(xiàn)者的修改,否則可能會(huì)有一堆conflict
git remote add upstream git@github.com:microsoft/terminal.git在每次開(kāi)始工作前首先需要同步最新的代碼(相當(dāng)于pull),令upstream與本地的master分支保持一致
git fetch upstream git checkout master git merge upstream/master開(kāi)始修改代碼前,在本地倉(cāng)庫(kù)的目錄下,根據(jù)想要實(shí)現(xiàn)的功能創(chuàng)建相應(yīng)的branch,切換到該分支進(jìn)行工作
git checkout -b test_branch代碼改完了之后最好先利用diff命令檢查下,有沒(méi)有誤操作一些代碼
git diff .如果沒(méi)有問(wèn)題則添加該修改,commit之后push到遠(yuǎn)程分支上
git add . git commit -m 'add xxx feature' git push -u origin test_branch3,為修改的代碼提交PR(Pull Request)
修改的代碼push到remote之后,在自己的倉(cāng)庫(kù)下就會(huì)有提示說(shuō)修改了代碼
點(diǎn)進(jìn)去之后就能看到做了哪些修改,還可以再加上一些備注之類的,然后就可以創(chuàng)建PR了
創(chuàng)建PR之后如果經(jīng)過(guò)code review表示還需要修改,那么直接在本地改完繼續(xù)push到這個(gè)分支即可,會(huì)在這個(gè)PR下面及時(shí)顯示出來(lái)每次push的commit記錄,最后直到被管理員merge為止
總結(jié)
以上是生活随笔為你收集整理的github 修改项目为public_在GitHub上为开源项目做贡献的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python函数图像平移_[Python
- 下一篇: java解析xml实例_在java中使用