如何參與Github上的開源項(xiàng)目

以開源推消息送項(xiàng)目MPush為例

Fork 開源項(xiàng)目到自己的賬號(hào)

  1. 打開https://github.com/并登錄自己的賬號(hào)

  2. 打要參與的開源開項(xiàng)目主頁(yè):
    比如 https://github.com/mpusher/mpush

  3. Fork該項(xiàng)目到自己的賬戶下(點(diǎn)擊右上角的Fork按鈕)

  4. 打開剛剛Fork的倉(cāng)庫(kù)主頁(yè)(在自己的賬號(hào)下面)

  5. clone 該倉(cāng)庫(kù)到本地,以我自己的賬號(hào)ohun為例:
    clone git@github.com:ohun/mpush.git
    (如果沒有設(shè)置ssh rsa public key也可以使用https協(xié)議)

  6. 切換到相應(yīng)的分支:
    git checkout dev
    (mpush項(xiàng)目最新的變更在dev,一般是master)

  7. 修改本地代碼,提交,最后推送到遠(yuǎn)程倉(cāng)庫(kù):
    git push origin dev
    (mpush項(xiàng)目最新的變更在dev,一般是master)

提交自己修改的內(nèi)容到源倉(cāng)庫(kù)

  1. 假設(shè)你的改動(dòng)已經(jīng)推送到自己賬戶下的遠(yuǎn)程倉(cāng)庫(kù)

  2. 登錄github 打開自己Fork的倉(cāng)庫(kù),點(diǎn)擊New pull request按鈕

  3. 然后會(huì)跳轉(zhuǎn)到,原作者的repo下,出現(xiàn)pull request的界面,你就選擇一下想要提交的branch就行了,如果有文件可以提交,下面會(huì)有commit的按鈕,你填一下description就ok了,然后等作者merge。


    github pull request.png

保持Fork的庫(kù)和源庫(kù)代碼同步

  1. 查看前面clone下來(lái)代碼的遠(yuǎn)程倉(cāng)庫(kù)的路徑:
    git remote -v

    git remote -v.png

  2. 配置源倉(cāng)庫(kù)(開源項(xiàng)目的)的路徑:
    git remote add upstream git@github.com:mpusher/mpush.git

    git remote add.png

  3. 同步源倉(cāng)庫(kù)的提交的變更:
    git fetch upstream

  4. 合并源倉(cāng)庫(kù)某個(gè)分支的變更到當(dāng)前本地分支:
    git merge upstream/dev
    (mpush項(xiàng)目最新的變更在dev,一般是master)

  5. 此時(shí),你的本地庫(kù)已經(jīng)和源倉(cāng)庫(kù)已經(jīng)完全同步了。但是注意,此時(shí)只是你電腦上的本地庫(kù)和遠(yuǎn)程的github源倉(cāng)庫(kù)同步了,你自己賬戶的github倉(cāng)庫(kù)還沒有同步,此時(shí)需要使用git push origin master命令把你本地的倉(cāng)庫(kù)提交到自己賬戶的github中。

參考:
https://segmentfault.com/q/1010000006216219
http://blog.csdn.net/myuantao3286286/article/details/50477139
https://site.douban.com/196781/widget/notes/12161495/note/269163206

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容