作为一个程序员,如果没有自己的github账号,都不好意思承认。Github作为程序员的天堂,可以从里面找到很多自己想要的资源(不要想歪噢),比如说临近春节的时候,Github上甚至能开源出抢票软件的代码。
Github的logo
那么作为一个Github重度爱好者,该如何为Github开源社区贡献自己的一份力呢?今天我就以自己的Github账号来演示一下。
派生(Fork)项目
如果你想参与某个项目,但是没有推送(push)权限,这时可以对这个项目进行Fork。Fork的意思是Github将在你的个人空间中创建一个属于你的项目副本,而且你具有push权限。
通过这种方式,管理者不再需要将精力花在添加用户权限上,其他用户可以fork这个项目并将修改后的内容推送到项目副本中,然后通过提交合并请求(pull request)来让他们的改动进入版本库中。
Github工作流程
Github除了正常的pull,push等流程外,设计了一个以合并请求为中心的特殊合作流程,它基于Git分支的特性,流程通常如下:
从master分支中创建一个新分支
提交一些修改来改进项目
将这个分支推送到github中
创建一个合并请求
讨论,根据实际情况进行修改
项目拥有者合并或关闭请求
实例演练
Fork项目到个人仓库
以schacon/blink项目为例,点击项目后面Fork标识
Fork项目
Fork成功后,会在自己的个人仓库中看到Fork后的项目
Fork后的项目
个人仓库clone到本地
clone到本地
创建一个新的分支
建立新分支
修改项目
按照需求修改项目,下面只是一个例子,实际修改可能比这复杂的多
修改项目
将改动提交到分支中
提交
新分支push到仓库中
push到仓库中
查看Github上的更新
将分支推送到Github上之后,会在项目副本中看到我们有新的分支slow-blink,而且最进一次提交信息也有显示
Github的更新
提交pull request
点击Compare & pull request的按钮后,会出现创建pull request的页面
创建pull request
合并请求
在我们提交pull request后,项目拥有者会看到我们的提交,他们可以同意也可以拒绝我们的提交,并通过邮件回复。如果在某个分支上提交的PR没有得到处理,则后续的提交都会合并到这一个PR上;而如果是一个新的分支,则新的提交会产生一个新的PR。
至此所有的操作均已完成,我们就可以开开心心的为Github做出自己的贡献了
总结
今天就自己的Github账号讲述了如何提PR,为Github开源社区贡献自己的一份力,希望对大家有所帮助
如果喜欢的话,记得关注小编噢,小编后续会坚持出更多技术性的文章,如果有任何问题,也欢迎提问,小编都会尽力解答的。