博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
版本控制
阅读量:3978 次
发布时间:2019-05-24

本文共 795 字,大约阅读时间需要 2 分钟。

关于版本控制

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

这个系统可以自动帮我们备份文件的每一次更改,并且可以非常方便的恢复到任意的备份(版本)状态。

实现版本控制的软件有很多种类,大致可以分为: 

本地版本控制系统 
集中式版本控制系统 
分布式版本控制系统。

1. 本地版本控制系统

借助软件我们可以记录下文件的每一次修改,如下图所示,文件被修改后,记录下了3个版本,这样我们通过版本控制系统(软件)便可以非常方便的恢复到任意版本。

版本控制1

这种类型的版本控制系统,功能比较单一,比如很难实现多人协同开发,所以现在几乎很少使用了。

2.集中式版本控制系统

实际开发环境,一个项目通常是由多人协作共同完成的,如何让在不同终端上的开发者协同工作成了亟待解决的问题,集中式版本控制系统便应运而生了。 

它通过单一的集中管理的服务器,保存所有文件的修订版本,协同工作的开发者都通过客户端连到这台服务器,取出最新的文件或者提交更新。其代表为SVN,如下图所示。

这里述

这种方式很好解决了多人协同开发的问题,但是也有一个弊端,如果集中管理的服务器出现故障,将会导致数据(版本)丢失的风险,另外协同开发者从集中服务器中更新数据时,严重依赖网络,如果网络不佳,也给开发带来诸多不便。

3. 分布式版本控制系统

分布式版本控制系统,则不需要中央服务器,每个协同开发者都拥有一个完整的版本库,这么一来,任何协同开发者用的服务器发生故障,事后都可以用其它协同开发者本地仓库恢复。

由于版本库在本地计算机,也便不再受网络影响了。如果要将本地的修改,推送给其它协同开发者,还需要一台共享服务器,所有开发者通过这台共享服务器同步和更新数据。如下图所示。

版本控制3

分布式版本控制系统弥补了前面两种版本控制系统的缺陷,成为了版本控制的首选方案。其代表就是Git。

你可能感兴趣的文章
关于PHP的header("P3P: CP=CURa……")
查看>>
linux 如何显示一个文件的某几行(中间几行)
查看>>
PHP数组的几个操作,求并集,交集,差集,数组与字符串的相互转换及数组去重
查看>>
apache配置中ProxyPassReverse指令的含义
查看>>
关于ubuntu mount nfs
查看>>
对于mysql处理数据库表中一对多的数据统计问题
查看>>
FreeBSD系统安装
查看>>
FreeBSD利用ports安装MySQL+Apache+PHP+phpMyAdmin
查看>>
一段简单的php分页代码示例
查看>>
Fckeditor修改增加字体和字体大小
查看>>
apache的静态/动态编译在apache+php+mysql的应用
查看>>
简单的滑动tab
查看>>
svn命令说明
查看>>
测试人员要掌握的基本的SQL语句(上)
查看>>
Javascript中最常用的55个经典技巧
查看>>
Linux上Apache反向代理之ProxyPass IIS网站总结
查看>>
Nginx介绍 – Nginx是什么?
查看>>
CGI
查看>>
关于大型论坛系统环境搭建(20万日IP负载平衡实战)–Nginx+Apache2+PHP+MySQL
查看>>
惠普前总裁孙振耀指点职业规划。(迄今见过的最好的职业规划的文章,毕生受益)!!!!
查看>>