一、什么是版本控制器

版本控制

版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。

版本控制最主要的功能就是追踪文件的变更。

版本控制器分类

集中式

版本库是集中存放在中央服务器的,工作的时候,使用自己的电脑,要先从中央服务器取得最新的版本,然后开始工作,结束后,再把自己的变更推送给中央服务器。

示例图:
在这里插入图片描述

缺点是必须联网才能工作,操作时每一步都需要和服务器交互数据,对网络带宽要求很高,文件过大时速度很慢

分布式

分布式版本控制系统本身没有“中央服务器”,每个人的电脑上都是一个完整的版本库。

和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。

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

示例图:
在这里插入图片描述

区别

以 SVN(集中式),GIT(分布式)举例

集中式(SVN)分布式(Git)
是否有中央服务器有。开发人员需要从中央服务器获得最新版本的项目然后在本地开发,开发完推送给中央服务器。因此脱离服务器开发者是几乎无法工作的没有中央服务器,开发人员本地都有 Local Repository
网络依赖必须要联网才能工作,而且对网络的依赖性较强,如果推送的文件比较大而且网络状况欠佳,则提交文件的速度会受到很大的限制分布式在没有网络的情况下也可以执行commit、查看版本提交记录、以及分支操作,在有网络的情况下执行 push 到 Remote Repository
文件存储格式按照原始文件存储,体积较大按照元数据方式存储,体积很小
是否有版本号没有
文件存储格式按照原始文件存储,体积较大按照元数据方式存储,体积很小
分支操作的影响创建新的分支则所有的人都会拥有和你一样的分支分支操作不会影响其他开发人员
提交提交的文件会直接记录到中央版本库提交是本地操作,需要执行push操作才会到主要版本库

参考文章:
廖雪峰的官方网站
集中式(SVN)和分布式(Git)版本控制系统的简单比较

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值