各版本控制系统的特点与区别(rcs、svn、git)

一、rcs(本地版本控制系统)

原理:在硬盘上(本地,local computer)保存补丁集(文件修订前后的变化),通过所有的补丁,可以计算出各个版本的文件内容


各版本控制系统的特点与区别(rcs、svn、git)_第1张图片


二、svn(集中化版本控制系统)

原理:在一个单一的集中管理的服务器(central server),保存所有文件的修订版本。协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。


各版本控制系统的特点与区别(rcs、svn、git)_第2张图片


三、git(分布式版本控制系统)

原理:客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。每一次的克隆操作,实际上都是一次对代码仓库的完整备份


各版本控制系统的特点与区别(rcs、svn、git)_第3张图片


git相比svn的主要优点:

svn保存的是一份最新的资源,当central server数据丢失时,客户端拥有的资源只能保证最新的代码资源不丢,而代码此前的更改记录,即历史提交记录,都无法恢复。

git保存的则是服务器上所有的数据,包括工程建立之初,一直到clone之时的所有版本资源。每一个客户端,都保存了完整的历史记录及提交日志等。

你可能感兴趣的:(各版本控制系统的特点与区别(rcs、svn、git))