集中式和分布式版本控制系统的区别
集中式:
先说集中式版本控制系统。简单的说就是,版本库是集中的存放于中央服务器的。干活的时候,先要去中央服务器里领取最新的版本,然后在开始干活。干完活在将自己的版本上传到中央服务器。
就好比要改一本书,先要从图书馆里将书籍借阅出来,然后改完了之后,在将图书归还给图书馆。然后别人看到的就是最新的版本了。
缺点:
缺点就是,一但没有网或者网络不好的话,自己写的东西就很难得传上去。别人也不能及时的看到。简单的说就是没有网就不能使用。
分布式:
分布式版本控制系统。分布式版本系统没有绝对的所谓中央服务器,每个人的电脑上都有一个版本库,使用的时候就不需要进行联网了。直接自己进行修改就行。既然每个人的电脑上都有一个版本库,那么多个人如何进行写作呢,只需要把你修改的和同事修改的进行交换就行。
比如说你修改了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!
集中式和分布式版本控制系统的区别相关推荐
- 集中式、分布式版本控制系统的区别
集中式版本控制系统(有 SVN.CVS等) 集中式有中央仓库(需要联着网工作) 修改的版本都在服务器仓库,每次对比代码 分布式版本控制系统(git) 分布式没有中央仓库,存在客户端一份(不用时刻连网, ...
- 【git】—集中式与分布式版本控制系统
[前言] 大家都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了,之前的linux代码是由Linus本人通过手工方式合并代码,后来为了切 ...
- 集中式版本控制系统和分布式版本控制系统的区别
# 集中式版本控制系统 它的版本库是集中存放在中央服务器中的,但是大家在工作中都是用的自己的电脑,所以要先从中央服务器中获得最新版,才可以干活,干完活后再把自己的工作内容推送到中央服务器中. ...
- 版本控制系统的集中式和分布式
大家都知道CVS及SVN都是集中式的版本控制系统:Git是分布式版本控制系统.那么集中式和分布式版本控制系统有什么区别呢? 先来说说集中式版本控制系统,版本库都是集中存放在中央服务器的.而干活的时候, ...
- git(2)---git 分布式版本控制系统
集中式vs分布式 Linus一直痛恨的CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢? 先说集中式版本控制系统,版本库是集中存放在中央服务 ...
- 版本控制:集中式VS分布式了解它们的运行方式
前面提到,Linus一直痛恨CVS及SVN这些集中式的版本控制系统,为什么呢?Git是分布式版本控制系统,那么集中式和分布式版本控制系统又有什么区别呢? 先说集中式版本控制系统,版本库是集中存放在中央 ...
- 版本控制系统-集中式与分布式的区别
SVN和CVS都是集中式版本控制系统,而Git是分布式版本控制系统 集中式版本控制系统 版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干 ...
- 集中式版本管理系统和分布式管理系统的区别-集中式vs分布式
集中式:版本库是集中存放在中央服务器的,本地是没有版本库的修改记录的.干活的时候,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器.所以集中式版本控制系统最大的 ...
- 何为集中式版本控制系统与分布式版本控制系统?
什么是集中式版本控制系统与分布式版本控制系统? 集中式版本控制系统:版本库是集中放在中央服务器的,当我们实际工作的时候,用的都是自己的电脑,所以首先要连接中央服务器,从那里得到最新的版本,然后编写或者 ...
最新文章
- 六大主题报告,四大技术专题,AI开发者大会首日精华内容全回顾
- git 删除本地仓库中的分支_本地 Git 仓库与 GitHub 关联
- 读取字符串中的数字和小数
- centos7重启网卡命令_重启 CentOS 7 系统后的 IP 地址问题
- bfc是什么_清除浮动和 BFC
- [导入]哀悼与感动同在[转载]
- 【文献阅读笔记】(1):一篇手把手教你做GWAS的Guideline文献解读
- Oracle导入导出批处理
- python判断用户名密码是否正确_Python账号密码登陆判断(三次机会)
- 分布式文件系统的性能测试方法
- 一个大学生的人生随笔
- 飞秋与虚拟机的有关IP设置
- RTKLIB专题学习(七)---精密单点定位实现初识(三)
- 洛谷 P3802 小魔女帕琪
- Linux 4.x MTD源码分析-cfi-flash设备probe过程分析
- 十、RabbitMQ发布确认高级
- 大规模SNS中兴趣圈子的自动挖掘
- 机械转嵌入式开发需要学什么东西?嵌入式软件工程师学习路线
- 动态规划(八):子序列系列
- 全球首个支持华为鸿蒙 HarmonyOS 的游戏引擎来了:Cocos Creator 3.2 月底发布
热门文章
- 恒瑞、百济之外,再鼎开辟了中国医药创新又一极
- 使用java搭建简单的ligerui环境
- HC-SR501人体红外感应模块程序
- openlayers地图坐标转换为屏幕像素坐标,屏幕像素坐标转成地图实际坐标
- 《太阳照常升起》观后感
- 启动SpringBoot 错误: 找不到或无法加载主类 com.xx.xxApplication
- java 个人通讯录_java web个人通讯录系统设计
- python爬取拉钩python数据分析职位招聘信息
- msc.marc的Python开发,MscMarc,python,2
- 【计算机网络基础 七】输入URL到浏览器发生了什么