Git工程开发实践(一)——Git基础

  

Git工程开发实践(一)——Git基础

  

一、版本控制系统

  

1,版本控制系统简介

  

版本控制系统(风投,版本控制系统)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。
版本控制系统分为:
,本地版本控制系统(lvc,本地版本控制系统)
B,集中式版本控制系统(cvc,集中式版本控制系统)
C,分布式版本控制系统(DVCS,分布式版本控制系统)

  

2,本地版本控制系统

  

本地版本控制系统大多都是采用某种简单的数据库来记录文件的历次更新差异。最流行的本地版本控制系统为RCS,其工作原理是在硬盘上保存补丁集(补丁是指文件修订前后的变化),通过应用所有的补丁,可以重新计算出各个版本的文件内容。
 Git工程开发实践(一)——Git基础

  

3,集中式版本控制系统

  

集中式版本控制系统(cvc,集中式版本控制系统)都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的开发人员都通过客户端连到服务器,取出最新的文件或者提交更新。集中式版本控制系统有CVS, Subversion,只好等。
 Git工程开发实践(一)——Git基础”> <br/>集中式版本控制系统的优点:相比本地版本控制系统,每个人都可以在一定程度上看到项目中的其他人正在做些什么。管理员可以轻松掌控每个开发者的权限,并且管理一个cvc远比在各个客户端上维护本地数据库简单。<br/>集中式版本控制系统的缺点:中央服务器的单点故障。如果中央服务器宕机,开发人员无法提交更新,无法协同工作。如果中央服务器的数据库所在磁盘发生损坏并且没有备份,将导致数据丢失。</p>
  <h4> 4分布式版本控制系统</h4>
  <p>分布式版本控制系统(DVCS,分布式版本控制系统)中,客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来,因此,任何一处协同工作用的服务器发生故障,都可以用任何一个镜像出来的本地仓库恢复。分布式版本控制系统的每一次的克隆操作都是一次对代码仓库的完整备份。<br/>常见的分布式版本控制系统有Git,变幻无常,Darcs,集市等。<br/> <img src=Git工程开发实践(一)——Git基础