咱们都说开源社区最大的魅力是人人多能够参与进去,发挥众人的力量,让一个项目更完善,更强壮。那么确定有人疑问,我本身目前尚未能力开源一个项目,可是想一块儿参与到别的开源项目中,该怎么操做呢?那么今天,就来给你们一块儿介绍下 GitHub 上的一些常见的操做,看完以后你就知道方法了。git
咱们姑且以 Square 公司开源的 Retrofit 为例来介绍。github
打开连接:markdown
https://github.com/square/retrofit学习
而后看到以下的项目主页:orm
能够看到一个项目能够进行的操做主要就是两部分,第一部分包括 Watch、Star、Fork ,这三个操做以前的系列介绍过了,这里就不啰嗦了。教程
咱们着重来介绍第二部分,分别包括 Code、Issues、Pull requests、Projects、Wiki、Pulse、Graphs。接下来咱们来一个个解释下。开发
Code 这个好理解,就是你项目的代码文件而已,这里说明一下,每一个项目一般都会有对该项目的介绍,只须要在项目的根目录里添加一个 README.md 文件就能够,使用 markdown 语法,GitHub 自动会对该文件进行渲染。文档
Issues Issues 表明该项目的一些问题或者 bug,并非说 Issues 越少越好,Issues 被解决的越多说明项目做者或者组织响应很积极,也说明该开源项目的做者很重视该项目。咱们来看下 Retrofit 的 Issues 主页,截至目前 close(解决) 了 1305 个 Issue,open (待解决)状态的有 37 个,这解决问题的比例与速度值得每位开源项目的做者学习。get
一样的,你们在使用一些开源项目有问题的时候均可以提 Issue,能够经过点击右上角的 New Issue 来新建 Issue,须要添加一个标题与描述就能够了,这个操做很简单。requests
Pull requests 咱们都知道 GitHub 的最大魅力在于人人均可参与,好比别人开源一个项目,咱们每一个人均可以一块儿参与开发,一块儿来完善,而这都经过 Pull requests 来完成,简称 PR。这个无法在 Retrofit 演示,下面我就以我本身在 GitHub 上的一个项目 9GAG 来给你们详细演示下怎么给一个项目发起 PR:
提早说明下,你必须确保你能够正常向 GitHub 提交代码,若是不能够的话,请看我以前的系列文章。
第一步登陆你的 GitHub 帐号,而后找到你想发起 PR 的项目,这里以 9GAG 为例,点击右上角的 Fork 按钮,而后该项目就出如今了你本身帐号的 Repository 里。
请注意,这个项目本来是属于 GitHub 帐号 stormzhang 下的,为了演示,我本身又从新注册了另外一个帐号叫 googdev 单纯为了演示而用。
Fork 以后,在帐号 googdev 下多了一个 9GAG 的项目,截图显示以下:
能够看到 Fork 过来的项目标题底部会显示一行小字:fork from stormzhang/9GAG ,除此以外,项目代码跟原项目如出一辙,对于原项目来讲,至关于别人新建了一个分支而已。
第二步,把该项目 clone 到本地,而后修改的 bug 也好,想要新增的功能也好,总之把本身作的代码改动开发完,保存好。为了方便演示,我这里只在原项目的 README.md 文件添加了一行文字:Fork from stormzhang !
接着,把本身作的代码改动 push 到 你本身的 GitHub 上去。
相信看过我前面教程的同窗这一步应该都会,不会的能够滚回去看前面的教程了。
第三步,点击你 Fork 过来的项目主页的 Pull requests 页面,
点击 New pull request 按钮紧接着到以下页面:
这个页面自动会比较该项目与原有项目的不一样之处,最顶部声明了是 stormzhang/9GAG 项目的 master 分支与你 fork 过来的 googdev/9GAG 项目 master 分支所作的比较。
而后最顶部能够方便直观的看到到底代码中作了哪些改动,大家也看到我就是加了一句 Fork from stormzhang !
一样的我写好标题和描述,而后咱们点击中间的 Create pull request 按钮,至此咱们就成功给该项目提交了一个 PR。
而后就等着项目原做者 review 你的代码,而且决定会不会接受你的 PR,若是接受,那么恭喜你,你已是该项目的贡献者之一了。
Projects 这个是最新 GitHub 改版新增的一个项目,这个项目就是方便你把一些 Issues、Pull requests 进行分类,反正我以为该功能很鸡肋,起码到目前为止基本没人用该功能,大家了解下就好。
Wiki 通常来讲,咱们项目的主页有 README.me 基本就够了,可是有些时候咱们项目的一些用法很复杂,须要有详细的使用说明文档给开源项目的使用者,这个时候就用到了 Wiki。
使用起来也很简单,直接 New Page ,而后使用 markdown 语法便可进行编写。
Pulse Pulse 能够理解成该项目的活跃汇总。包括近期该仓库建立了多少个 Pull Request 或 Issue,有多少人参与了这个仓库的开发等,均可以在这里一目了然。
根据这个页面,用户能够判断该项目受关注程度以及项目做者是否还在积极参与解决这些问题等。
Graphs Graphs 是以图表的形式来展现该项目的一个总体状况。好比项目的所有贡献人,好比 commits 的围度分析,好比某天代码提交的频繁程度等。
Settings 若是一个项目是本身的,那么你会发现会多一个菜单 Settings,这里包括了你对整个项目的设置信息,好比对项目重命名,好比删除该项目,好比关闭项目的 Wiki 和 Issues 功能等,不过大部分状况下咱们都不须要对这些设置作更改。感兴趣的,能够自行看下这里的设置有哪些功能。
以上就包含了一个 GitHub 项目的全部操做,相信你们看完以后对 GitHub 上一些经常使用的操做都熟悉了,从如今开始,请一块儿参与到开源社区中来吧,开源社区须要咱们每一个人都贡献一份力,这样开源社区才能愈来愈强大,也才能对更多的人有帮助!