版本控制Git (上)

大家都知道在工作中并不是一个人负责一个项目,可想而知,一个项目甚至一个任务都是多个人协同工作,可是怎么来管理这些人不同进度的工作呢?那就涉及到版本控制工具了。那什么是版本控制工具呢?

Git的干爹

比如Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了。Linus虽然创建了Linux,但Linux的壮大是靠全世界热心的志愿者参与的,这么多人在世界各地为Linux编写代码,那Linux的代码是如何管理的呢?事实是,在2002年以前,世界各地的志愿者把源代码文件通过diff的方式发给Linus,然后由Linus本人通过手工方式合并代码!哈哈,是手工合并代码哟,想想就觉得需要关爱呀。当时已经SVN、CVS之类的版本控制系统了,为什么Linus不用呢?因为Linus坚决反对SVN、CVS这种集中式的版本控制系统,一个是速度慢,一个是需要联网。当时有分布式的版本控制系统,但是是要付费的,也就不符合Linux开源的最大本质了。

可是到了2002年,手工合代码真的不能满足需要了,所以他们选择了商业的版本控制系统BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统。2005年,Linux的社区已经是大牛云集,人牛逼了总是要嘚瑟下的,就跟阿里抢月饼都用脚本抢,太屌!开发Samba的Andrew试图破解BitKeeper的协议(这么干的其实也不只他一个),被BitMover公司发现了(监控工作做得不错!),于是BitMover公司怒了,要收回Linux社区的免费使用权。哈哈,常理来说Linux公开给BitKeeper道歉,说下自己的不是应该没什么事了。但是我想多了,Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Linux系统的源码已经由Git管理了!牛是怎么定义的呢?大家可以体会一下。

Git迅速成为最流行的分布式版本控制系统,尤其是2008年,GitHub网站上线了,它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等。

Git的优点

  1. 不用联网
    每个人的电脑中都有一个版本库,自己写的代码提交到自己的版本库就好了,那怎么多人协同呢,互相推送给对方就好了。
  2. 安全性高
    一个人的电脑坏了,另一个人的电脑上不是还有一份。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。
  3. 强大的分支管理
    每个人都可以有自己的分支,我们只要保证向主分支或者dev分支上提交不冲突就好了。

其实,Git也有台机器充当中央服务器的,但是他只是为了用来方便“交换”大家的修改,没他,大家也能各自干活,知识不方便交换修改而已。

Git的安装

git的安装网上一搜一大把,我就不详细说了,我用的是brew,前提是要安装brew脚本。安装方法去官网粘贴复制就可以了。homebrew安装完了就一句话。

1
brew install git

Git的工作原理

工作了,明天在写。。。。

杰哥,更新了一句话,有空再写

Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2019 史晨吉的博客 All Rights Reserved.

访客数 : | 访问量 :