相信大家都听说过Git,因为每一个写程序的人都离不开它。但是真正能够掌握它还是需要下一点功夫的。今天开始,Git系列的文章开始连载,希望大家能够持续的关注。
作为本系列第一篇文章,我们来聊一聊 Git ,官方一点说Git就是一个分布式版本控制系统。
为什么会想到去做一个分布式版本控制系统呢?
在1991年时,Linus开发出了Linux系统,当时的Linux是开源的,所以当时Linux发展非常的迅速,全世界很多热心的程序员都纷纷为Linux添砖加瓦,这么多人给Linux写代码,这些代码如何管理的呢?事实上,在2002年之前,这些热心的程序员都是通过diff的方式把源代码文件发送给Linus,最后Linus手动将代码合并起来。这样看来,非常的复杂。那么为什么不把代码放在当时的cvs和svn这些集中式的版本管理系统呢?因为Linus坚决反对这种速度慢,而且还需要联网的版本管理系统。
不过,到了2002年之后,代码实在太多了。Linus也撑不下去了,所以无奈之下找了一个商业的版本控制系统BitKeeper,但是BitKeeper的老板还是有点魄力的,直接授权Linux免费使用他们的系统。
但是好景不长,在2005年,Linux社区里的一位大牛,开发Samba的Andrew试图去破解BitKeeper的协议,其实不止他一个人这么干过,结果就是被BitKeeper公司发现了,结果可想而知。在此期间,Linus其实是可以挽回的,但是可能由于Linus江湖气息很重,一直没有道歉。
更加出人意料的事情就来了,Linus随后花了两周的时间用C写了一个分布式版本控制系统,它就是Git。一个月之内,Linux的代码就交给了Git来管理!
看完这个故事,相信大家对于大佬有个定义了,也许这就是大佬吧!
当然这个之后,我们熟知的Github也在2008年正式上线,无数的开源项目蜂拥而至,也让GitHub成为了全球最大的程序员社区(同性社区)
知道了Git从何而来,那么它到底有哪一些优势特点?
第一,版本控制。解决了多人开发时开发的代码问题,也解决了找回历史代码的问题。
第二,分布式。Git是一个分布式版本控制系统,同一个Git仓库,可以分不到不同的机器当中,首先,一台服务器24小时开机,其他人可以从这台服务器仓库中克隆一份到自己的电脑上,并且把自己提交推送到服务器上,当然也可以从服务器里拉取别人的。我们自己可以搭建这台服务器,当然也可以使用Github。
今天咱们就说这么多吧,下一篇文章我会教大家如何来安装配置Git!敬请期待!