各版本控制系统的特点与区别(rcs、svn、git)
2017-11-03 本文已影响0人
南慕瑶
一、rcs(本地版本控制系统)
原理:在硬盘上(本地,local computer)保存补丁集(文件修订前后的变化),通过所有的补丁,可以计算出各个版本的文件内容
二、svn(集中化版本控制系统)
原理:在一个单一的集中管理的服务器(central server),保存所有文件的修订版本。协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。
三、git(分布式版本控制系统)
原理:客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。每一次的克隆操作,实际上都是一次对代码仓库的完整备份。
git相比svn的主要优点:
svn保存的是一份最新的资源,当central server数据丢失时,客户端拥有的资源只能保证最新的代码资源不丢,而代码此前的更改记录,即历史提交记录,都无法恢复。
git保存的则是服务器上所有的数据,包括工程建立之初,一直到clone之时的所有版本资源。每一个客户端,都保存了完整的历史记录及提交日志等。