《一》版本控制

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

有了版本控制,就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态;还可以比较文件的变化细节,查出是谁在什么时间修改了哪个地方;还可以将多人代码进行合并,并且在出现冲突时更好地进行处理。

集中式版本控制系统:

集中式版本控制系统,有一个单一的集中管理的服务器,保存所有文件的修订版本,协同工作的人们都通过客户端连接到这台服务器,取出最新的文件或者提交更新。典型代表是 CVS、SVN。

集中式版本控制系统最显而易见的缺点是中央服务器的单点故障:

  1. 如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。
  2. 要是中央服务器的磁盘发生故障,就会有丢失数据的风险:客户端提取出来保存在本地只是某些快照数据,不能保证所有的数据都已经有人事先完整提取出来过,所以就会有丢失历史变更记录的风险。
    请添加图片描述

分布式版本控制系统:

分布式版本控制系统没有中央服务器,每个人的电脑都是一个完整的版本库,客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来,这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。典型代表是 Git、HG。

分布式版本控制系统出现之后,解决了集中式版本控制系统的缺陷:

  1. 断网的情况下也可以进行开发:因为版本控制是在本地进行的。
  2. 如果使用 github 等代码托管中心(充当分布式版本控制系统中的中央服务器,本质上也是一个客户端)进行团队协作,哪怕 github 挂了,每个客户端保存的也都是整个完整的项目。
    请添加图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值