美文网首页Git系列篇
版本控制的演变

版本控制的演变

作者: 拙峰朽木 | 来源:发表于2017-06-12 16:41 被阅读16次

1.本地版本控制:

许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。
其中最流行的一种叫做 RCS,它的工作原理是在硬盘上保存补丁集(补丁是指文件修订前后的变化);通过应用所有的补丁,可以重新计算出各个版本的文件内容。

image.png

2.集中化的版本控制系统(CVCS)

不同系统上的开发者协同工作?
有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。 多年以来,这已成为版本控制系统的标准做法。
诸如 CVS、Subversion 以及 Perforce 等

弊:要整个项目的历史记录被保存在单一位置,就有丢失所有历史更新记录的风险。

image.png

3.分布式版本控制系统(DVCS)

客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。
何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。 因为每一次的克隆操作,实际上都是一次对代码仓库的完整备份。

像 Git、Mercurial、Bazaar 以及 Darcs 等

image.png

更进一步,许多这类系统都可以指定和若干不同的远端代码仓库进行交互。籍此,你就可以在同一个项目中,分别和不同工作小组的人相互协作。 你可以根据需要设定不同的协作流程,比如层次模型式的工作流,而这在以前的集中式系统中是无法实现的。

很难理解svn和Git的区别,或者说优势。
svn commit是需要联网的,svn中央服务器代码一旦丢失就很难恢复。

分布式理论上是不需要中央服务器的,A和B是可以直接相互推送的,但是真实开发中A和B的电脑要相互访问是很麻烦的。所以出现了github和OSGit。

相关文章

  • 版本控制的演变

    1.本地版本控制: 许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。其中最流...

  • 第十三章 版本管理

    版本管理指项目整体版本的演变过程管理。 版本控制指借助版本控制工具追踪代码的每个变更。 一、版本管理 版本管理关心...

  • How to use Git

    版本控制 版本控制就是控制版本,版本控制系统帮助控制(管理)某个事物(通常指源代码)的不同版本现在流行的版本控制:...

  • Git复习

    版本控制 版本控制的意义在于记录和备份. 版本控制系统分类: 本地版本控制系统:无法协同开发 集中化版本控制系统:...

  • Git最详细篇-五星收藏

    目录 一、版本控制概要 1.1、什么是版本控制 1.2、常用术语 1.3、常见的版本控制器 1.4、版本控制分类 ...

  • idea 文件名颜色所代表的含义

    绿色,已经加入版本控制暂未提交; 红色,未加入版本控制; 蓝色,加入版本控制,已提交,有改动; 白色,加入版本控制...

  • git

    版本控制分类 本地版本控制(本地备份)、集中版本控制(代表产品svn)、分布式版本控制(代表产品git) 启动gi...

  • Git之版本控制

    一、版本控制 目录:浅谈发展历史、什么是版本控制、常见版本控制工具、版本控制的分类 1.浅谈发展历史 同生活中的许...

  • 2-Kafka版本迭代及特性

    Kafka的版本选择,以及每个版本的特性和变化。 Kafka的发行版 Apache Kafka版本演变及特性

  • 版本控制

    开始大家用 Mercurial HG 软件 进行代码控制。 我在https://bitbucket.org 代...

网友评论

    本文标题:版本控制的演变

    本文链接:https://www.haomeiwen.com/subject/phglqxtx.html