Git那些小事(一)

Git那些小事(一)_第1张图片
git-logo

是什么(What)

  • Git是一个自由开放源码的分布式版本控制系统,用于处理从小型到大型项目的速度和效率 。- 官网
  • Git是目前世界上最先进的分布式版本控制系统(没有之一)。-廖雪峰

也许你会问什么是版本控制系统呢?

版本控制是记录一种或若干个文件内容发生变化,以便将来查阅特定版本修订情况的系统

谁提出了(Who)

Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git

为什么提出Git(Why)

在Git被提出之前,已经有集中式版本控制系统,如SVN、CVS等。那为什么要提出Git呢?
因为Linus坚定地反对CVS和SVN,这些集中式的版本控制系统不但速度慢,而且必须联网才能使用。有一些商用的版本控制系统,虽然比CVS、SVN好用,但那是付费的,和Linux的开源精神不符。

这块提到一个集中式版本控制系统和分布式控制系统,他两的区别是什么呢?

集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。
集中式版本控制系统最大的毛病就是必须联网才能工作。

Git那些小事(一)_第2张图片
集中式版本控制

分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

Git那些小事(一)_第3张图片
分布式版本控制

特点(How)

优点

  • 离线状态
  • 速度快
  • 自由选择工作方式
  • 模块化
  • 可以回退

缺点
目前,在我用Git的过程中,没有觉得不好的地方。

你可能感兴趣的:(Git那些小事(一))