更多参考链接:http://www.wangyuxiong.com/archives/52140
git基础学习
Git是一个分布式版本控制软件,原来是linux内核开发者林纳斯·托瓦兹(Linus Torvalds)为了更好地管理linux内核开发而创立的。自诞生于 2005 年以来,Git 日臻成熟完善,在高度易用的同时,仍然保留着初期设定的目标。 速度,分布式,强大的分支。
提到git,不得不回顾下版本管理的历史:
1. 本地版本管理系统 VCS(Version Control Systems)
类似于复制整个目录,加上备份时间加以区别。简单但是容易出错,弄错文件会导致数据丢失没法回退。
2. 集中化版本管理系统 CVCS(Centralized Version Control Systems)
成熟方案:诸如 CVS,Subversion 以及 Perforce 等
特点:都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。
缺点是中央服务器的单点故障,会导致无法协同工作,而且还是会存在数据丢失的情况。
3. 分布式管理系统 DVCS(Distributed Version Control System)
成熟的方案:诸如 Git,Mercurial,Bazaar 还有 Darcs 等
客户端并不只提取最新版本的文件快照,而是把原始的代码仓库完整地镜像下来。每一次的提取操作,实际上都是一次对代码仓库的完整备份。解决来CVCS的缺陷。