如何参与Github上的开源项目

以开源推消息送项目MPush为例

Fork 开源项目到自己的账号

  1. 打开https://github.com/并登录自己的账号

  2. 打要参与的开源开项目主页:
    比如 https://github.com/mpusher/mpush

  3. Fork该项目到自己的账户下(点击右上角的Fork按钮)

  4. 打开刚刚Fork的仓库主页(在自己的账号下面)

  5. clone 该仓库到本地,以我自己的账号ohun为例:
    clone git@github.com:ohun/mpush.git
    (如果没有设置ssh rsa public key也可以使用https协议)

  6. 切换到相应的分支:
    git checkout dev
    (mpush项目最新的变更在dev,一般是master)

  7. 修改本地代码,提交,最后推送到远程仓库:
    git push origin dev
    (mpush项目最新的变更在dev,一般是master)

提交自己修改的内容到源仓库

  1. 假设你的改动已经推送到自己账户下的远程仓库

  2. 登录github 打开自己Fork的仓库,点击New pull request按钮

  3. 然后会跳转到,原作者的repo下,出现pull request的界面,你就选择一下想要提交的branch就行了,如果有文件可以提交,下面会有commit的按钮,你填一下description就ok了,然后等作者merge。


    github pull request.png

保持Fork的库和源库代码同步

  1. 查看前面clone下来代码的远程仓库的路径:
    git remote -v

    git remote -v.png

  2. 配置源仓库(开源项目的)的路径:
    git remote add upstream git@github.com:mpusher/mpush.git

    git remote add.png

  3. 同步源仓库的提交的变更:
    git fetch upstream

  4. 合并源仓库某个分支的变更到当前本地分支:
    git merge upstream/dev
    (mpush项目最新的变更在dev,一般是master)

  5. 此时,你的本地库已经和源仓库已经完全同步了。但是注意,此时只是你电脑上的本地库和远程的github源仓库同步了,你自己账户的github仓库还没有同步,此时需要使用git push origin master命令把你本地的仓库提交到自己账户的github中。

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

推荐阅读更多精彩内容