在日常工作中subversion—SVN是一个极为常见且比较重要的一个软件,它可以实现文件的版本控制使得多人可以共同协作的一个工具,在Linux的系统中一般情款下都会有集成安装,当然有的时候没有装也可以通过配置好的yum源来快速安装部署,在此就简单的说一下。
这样subversion就安装完了,并且在查看版本时我们得知subversion版本和2种存储模式,分别是:fs_base和fs_fs,在这2中模式中各有优缺点,在官方给出的说明中有一个表格,如下:
特性Berkeley DBFSFS
对操作中断的敏感
很敏感;系统崩溃或者权限问题会导致数据库“塞住”,需要定期进行恢复。
不敏感
可只读加载
不能
可以
存储平台无关
不能
可以
可从网络文件系统访问
不能
可以
版本库大小
稍大
稍小
扩展性:修订版本树数量
无限制
某些本地文件系统在处理单一目录包含上千个条目时会出现问题。
扩展性:文件较多的目录
较慢
较慢
检出最新代码的速度
较快
可以
大量提交的速度
较慢,但时间被分配在整个提交操作中
较快,但最后较长的延时可能会导致客户端操作超时
组访问权处理
对于用户的 umask 设置十分敏感,最好只由一个用户访问。
对 umask 设置不敏感
功能成熟时间
2001 年
2004 年
在安装好后,此时就需要新建一个文件夹用于存放SVN的版本数据,然后指定创建SVN的版本库及使用的存储模式,当然如果没有指定默认都是使用fs_fs模式
在创建完成后就会在/data/svndata文件夹中生成相应的库及配置文件、文件夹,其中conf文件夹中有3个文件authz、passwd、svnserve.conf,其中authz目录权限控制文件,passwd是明文用户密码配置文件,svnserve.conf是SVN的设置配置文件。
在svnserve.conf配置文件中先要把以下几行的注释去掉,编辑修改
启动就用svnserve中使用-d参数用demon启动,-r参数指定路径的启动就好,参数如下:
SVN默认监听端口是tcp的3690端口,在开启后要注意开启防火墙。如果是在svnserve.conf配置文件中有开启,当然如果没有使用sasl的话密码都是明文在passwd文件中的,如果是启用就可以根据实际把配置文件放在sql数据库中或者是其它加密文件中,当然在此就不做过多的说明,就以明文密码为例,其中authz的配置如下:
这些配置文件在改好保存后立即生效,不需要重启SVN,平时访问svn时可以安装好SVN的客户端工具后URL用SVN://IP或域名来访问。
CentOS 7.2下Nginx+MySQL+PHP-FPM+SVN配置Walle自动化部署系统详解 http://www.linuxidc.com/Linux/2016-11/137703.htm
Subversion (SVN) 的详细介绍:请点这里
Subversion (SVN) 的下载地址:请点这里