集中式:

先说集中式版本控制系统。简单的说就是,版本库是集中的存放于中央服务器的。干活的时候,先要去中央服务器里领取最新的版本,然后在开始干活。干完活在将自己的版本上传到中央服务器。

就好比要改一本书,先要从图书馆里将书籍借阅出来,然后改完了之后,在将图书归还给图书馆。然后别人看到的就是最新的版本了。

缺点:

缺点就是,一但没有网或者网络不好的话,自己写的东西就很难得传上去。别人也不能及时的看到。简单的说就是没有网就不能使用。


分布式:

分布式版本控制系统。分布式版本系统没有绝对的所谓中央服务器,每个人的电脑上都有一个版本库,使用的时候就不需要进行联网了。直接自己进行修改就行。既然每个人的电脑上都有一个版本库,那么多个人如何进行写作呢,只需要把你修改的和同事修改的进行交换就行。

比如说你修改了A文件,你的一个同事也修改了A文件。这个时候只要把自己修改的部分推给对方,对方就能够看到你的修改。

和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。

在实际使用分布式版本控制系统的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。

最根本的区别:

集中式和分布式最根本的区别就是:

分布式每个人的电脑上都可以直接拷贝完整的代码版本。而集中式只能拷贝自己需要的。

分布式的服务器挂掉之后,不会影响工作。而集中式的服务器挂掉之后,根本就没法进行工作。


当然,Git的优势不单是不必联网这么简单,后面我们还会看到Git极其强大的分支管理,把SVN等远远抛在了后面。

CVS作为最早的开源而且免费的集中式版本控制系统,直到现在还有不少人在用。由于CVS自身设计的问题,会造成提交文件不完整,版本库莫名其妙损坏的情况。同样是开源而且免费的SVN修正了CVS的一些稳定性问题,是目前用得最多的集中式版本库控制系统。

除了免费的外,还有收费的集中式版本控制系统,比如IBM的ClearCase(以前是Rational公司的,被IBM收购了),特点是安装比Windows还大,运行比蜗牛还慢,能用ClearCase的一般是世界500强,他们有个共同的特点是财大气粗,或者人傻钱多。

微软自己也有一个集中式版本控制系统叫VSS,集成在Visual Studio中。由于其反人类的设计,连微软自己都不好意思用了。

分布式版本控制系统除了Git以及促使Git诞生的BitKeeper外,还有类似Git的Mercurial和Bazaar等。这些分布式版本控制系统各有特点,但最快、最简单也最流行的依然是Git!


集中式和分布式版本控制系统的区别相关推荐

  1. 集中式、分布式版本控制系统的区别

    集中式版本控制系统(有 SVN.CVS等) 集中式有中央仓库(需要联着网工作) 修改的版本都在服务器仓库,每次对比代码 分布式版本控制系统(git) 分布式没有中央仓库,存在客户端一份(不用时刻连网, ...

  2. 【git】—集中式与分布式版本控制系统

    [前言] 大家都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了,之前的linux代码是由Linus本人通过手工方式合并代码,后来为了切 ...

  3. 集中式版本控制系统和分布式版本控制系统的区别

    # 集中式版本控制系统 它的版本库是集中存放在中央服务器中的,但是大家在工作中都是用的自己的电脑,所以要先从中央服务器中获得最新版,才可以干活,干完活后再把自己的工作内容推送到中央服务器中.      ...

  4. 版本控制系统的集中式和分布式

    大家都知道CVS及SVN都是集中式的版本控制系统:Git是分布式版本控制系统.那么集中式和分布式版本控制系统有什么区别呢? 先来说说集中式版本控制系统,版本库都是集中存放在中央服务器的.而干活的时候, ...

  5. git(2)---git 分布式版本控制系统

    集中式vs分布式 Linus一直痛恨的CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢? 先说集中式版本控制系统,版本库是集中存放在中央服务 ...

  6. 版本控制:集中式VS分布式了解它们的运行方式

    前面提到,Linus一直痛恨CVS及SVN这些集中式的版本控制系统,为什么呢?Git是分布式版本控制系统,那么集中式和分布式版本控制系统又有什么区别呢? 先说集中式版本控制系统,版本库是集中存放在中央 ...

  7. 版本控制系统-集中式与分布式的区别

    SVN和CVS都是集中式版本控制系统,而Git是分布式版本控制系统 集中式版本控制系统 版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干 ...

  8. 集中式版本管理系统和分布式管理系统的区别-集中式vs分布式

    集中式:版本库是集中存放在中央服务器的,本地是没有版本库的修改记录的.干活的时候,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器.所以集中式版本控制系统最大的 ...

  9. 何为集中式版本控制系统与分布式版本控制系统?

    什么是集中式版本控制系统与分布式版本控制系统? 集中式版本控制系统:版本库是集中放在中央服务器的,当我们实际工作的时候,用的都是自己的电脑,所以首先要连接中央服务器,从那里得到最新的版本,然后编写或者 ...

最新文章

  1. 六大主题报告,四大技术专题,AI开发者大会首日精华内容全回顾
  2. git 删除本地仓库中的分支_本地 Git 仓库与 GitHub 关联
  3. 读取字符串中的数字和小数
  4. centos7重启网卡命令_重启 CentOS 7 系统后的 IP 地址问题
  5. bfc是什么_清除浮动和 BFC
  6. [导入]哀悼与感动同在[转载]
  7. 【文献阅读笔记】(1):一篇手把手教你做GWAS的Guideline文献解读
  8. Oracle导入导出批处理
  9. python判断用户名密码是否正确_Python账号密码登陆判断(三次机会)
  10. 分布式文件系统的性能测试方法
  11. 一个大学生的人生随笔
  12. 飞秋与虚拟机的有关IP设置
  13. RTKLIB专题学习(七)---精密单点定位实现初识(三)
  14. 洛谷 P3802 小魔女帕琪
  15. Linux 4.x MTD源码分析-cfi-flash设备probe过程分析
  16. 十、RabbitMQ发布确认高级
  17. 大规模SNS中兴趣圈子的自动挖掘
  18. 机械转嵌入式开发需要学什么东西?嵌入式软件工程师学习路线
  19. 动态规划(八):子序列系列
  20. 全球首个支持华为鸿蒙 HarmonyOS 的游戏引擎来了:Cocos Creator 3.2 月底发布

热门文章

  1. 恒瑞、百济之外,再鼎开辟了中国医药创新又一极
  2. 使用java搭建简单的ligerui环境
  3. HC-SR501人体红外感应模块程序
  4. openlayers地图坐标转换为屏幕像素坐标,屏幕像素坐标转成地图实际坐标
  5. 《太阳照常升起》观后感
  6. 启动SpringBoot 错误: 找不到或无法加载主类 com.xx.xxApplication
  7. java 个人通讯录_java web个人通讯录系统设计
  8. python爬取拉钩python数据分析职位招聘信息
  9. msc.marc的Python开发,MscMarc,python,2
  10. 【计算机网络基础 七】输入URL到浏览器发生了什么