SVN简介

SVN是Subversion的简称,是一个自由开源的版本控制系统。 Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况,这样就可以借此将数据恢复到以前的版本,并可以查看数据的更改细节。

早期版本控制使用的是CVS,后来SVN替代了CVS,随着android兴起,出现Git版本控制工具。

SVN基本概念

问题: 怎样让系统允许用户共享信息,而不会让他们因意外而互相干扰?

复制-修改-合并方案(Subversion默认的模式)
在这种模型里,每一个客户读取项目配置库建立一个私有工作副本——版本库中文件和目录的本地映射。用户并行 工作,修改各自的工作副本,终,各个私有的复制合并在一起,成为终的版本,这种系统通常可以辅助合并操 作,但是终要靠人工去确定正误。

锁定-修改-解锁方案

在这样的模型里,在一个时间段里配置库的一个文件只允许被一个人修改。 此模式不适合软件开发这种工作。

SVN架构

Subversion支持Linux和Windows,更多是安装在Linux下。
svn服务器有2种运行方式:独立服务器和借助apache运行。两种方式各有利弊,用户可以自行选择。 svn存储版本数据也有2种方式:BDB一种事务安全型表类型和FSFS一种不需要数据库的存储系统。 因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。

原文地址:https://www.cnblogs.com/churujianghudezai/p/12599291.html