github上成员贡献量_Github学习笔记1

什么是Github

Github是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名Github。

对于一个开源项目,从开发角度讲大体上分为两类人,一类称为核心开发团队,它们可以向保存源代码的版本库提交,即对源代码的修改具有最终的决定权。另外一类称为贡献者,它们不属于核心开发团队,虽然也能看到源代码,但没有权利向版本库提交修改。

采用传统的集中式版本控制系统(如SVN)的开源项目,这两个群体的用户体验都不是太好。如图1-2所示,项目的贡献者(非核心成员)很不“高兴”,因为它们即使有修改代码的能力和愿望,也不能直接向版本库提交,要想成为提交者需要一个长时间建立信任的过程。然而即便是核心开发团队的成员,体验也不是太好,因为凡是涉及到版本库的操作都需要在联网的状态下进行,网络带宽对用户体验影响相当大。

6c6b750f71a3a2738f81cbc3031e1bb9.png

Git等分布式版本控制系统的出现,彻底颠覆了原有代码管理的组织模式。使用Git,不再依赖唯一的,集中式的版本库,而是每一个开发者本地都拥有一份完整的版本库。Git并不排斥集中式的使用模式,但更倾向于将集中式版本库成为共享版本库。核心开发团队的成员和贡献者(非核心成员)都可以从共享版本库克隆一份本地版本库,但只有核心团队成员才可以将自己本地版本库的提交推送到共享版本库上,如图所示

8c741d27a3981d0f53eb89afe2df451e.png

使用Git做版本控制(如图1-3所示),核心开发团队非常“高兴”,因为它们和共享版本库之间不必一直保持连接状态,诸如查看日志,提交,创建分支等几乎全部操作都(脱离网络)在本地的版本库中完成。项目贡献者(非核心成员)也不再那么沮丧,因为版本库人人皆可更改(知识针对本地版本库而言)。稍微让贡献者感到困难的是如何将自己对项目的改进被核心开发团队所了解并接纳。Git提供了多种途径,一个方法就是先用

git format-patch

命令将本地提交转换为补丁文件或补丁文件序列,再通过邮件发送给核心开发团队。另外一个方法就是搭建一个自己专有的共享版本库,通过邮件创建一个拉拽请求(Pull Request),让核心团队的开发者到自己的版本库来抓取(Pull)。

Github的出现进一步推动了Git的普及,简化了版本控制的管理和操作流程,为开发者提供了更好的交流平台。如图所示:

34855d2935ed95dca44c04b584a49a7d.png

使用Github,创建项目变得非常轻松,创建者只需要再Github上点击一下鼠标即可创建一个新的版本库,通过简单的Web操作即可完成项目授权进而组建项目核心团队。在Github中,非核心团队成员参与项目也很容易。先找到自己希望参与的项目,然后只需要在Web上点击一下鼠标即可在自己的托管空间下创建一个派生(fork)的项目,并对派生项目的版本库具有读写的完全权限,就好像这个项目原本就是由自己创建的一样。当贡献者完成开发并向自己派生的版本库推送后,可以通过Github的Web界面向项目的核心开发团队发送一个 Pull Request,请求审核。项目的核心团队收到Pull Request后审核代码,审核通过后可以直接通过Web界面执行合并操作接纳贡献者的提交。

http://www.worldhello.net/gotgithub/02-join-github/010-account-setup.html​www.worldhello.net
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值