第一步:安装SVN环境依赖

yum -y install subversion #下载并安装svn服务

svnserve --version #检查svn版本,确认环境是否安装成功

第二步:创建版本库目录和版本库

mkdir -p /home/svn/svnrepos/ #-p表示递归创建目录

svnadmin create /home/svn/svnrepos/svn-test #创建版本库

cd /home/svn/svnrepos/svn-test #进入版本库

下面是svn-test目录下的文件列表 

利用Linux搭建SVN服务器,详细过程_linux

第三步:配置svn信息,修改配置文件

1.首先进入当前目录下的conf文件

利用Linux搭建SVN服务器,详细过程_linux_02

authz:负责账号权限的管理,控制账号是否读写权限
passwd:负责账号和密码的用户名单管理
svnserve.conf:svn服务器配置文件

2.依次修改配置文件信息

vim authz
#提示1:进入文件编辑文件按字母 i
#提示2:退出并保存文件,先按ESC 然后按shift+:,最后输入wq完成文件内容保存

利用Linux搭建SVN服务器,详细过程_svn_03

[/]代表根目录下所有的资源,如果要限定资源,可以加上子目录即可
root为客户端链接账号 rw表示赋予此账号可读写的权限(r代表读权限,w代表写权限)

vim passwd
#提示1:进入文件编辑文件按字母 i
#提示2:退出并保存文件,先按ESC 然后按shift+:,最后输入wq完成文件内容保存

利用Linux搭建SVN服务器,详细过程_svn_04

这里主要配置的是root=123456,也就是配置svn用户的账号和密码信息

vim svnserve.conf
#提示1:进入文件编辑文件按字母 i
#提示2:退出并保存文件,先按ESC 然后按shift+:,最后输入wq完成文件内容保存

利用Linux搭建SVN服务器,详细过程_linux_05

#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none                #使授权用户有写权限
auth-access=write                 #密码数据库的路径
password-db=passwd           #访问控制文件
authz-db=authz                     #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/home/svn/svnrepos  #svn资源版本路径
 

第四步:启动SVN服务器

svnserve -d -r /home/svn/svnrepos #启动svn服务

ps -aux|grep svn #查看服务是否启动成功

利用Linux搭建SVN服务器,详细过程_linux_06

 上图,就代表服务启动成功了,到这里,SVN就算配置完成了,接下来就是开放权限,进行远程访问了。

第五步:开放端口

SVN默认端口为3690,由于我使用的是阿里云服务器,linux CentOS版本,使用以下命令进行端口放行。

firewall-cmd --zone=public --add-port=3690/tcp --permanent #放行3690端口

firewall-cmd --reload #重启防火墙

同时,还需要去阿里云控制台去配置安全组配置,放行3690端口,如下图

利用Linux搭建SVN服务器,详细过程_版本库_07

 第六步:客户端访问svn服务器(我使用的是TortoiseSVN,可以直接百度进行下载安装)
右键checkout,输入地址:svn://服务器IP地址:3690/svn-test

利用Linux搭建SVN服务器,详细过程_svn服务器_08

连接SVN服务器成功效果图,至此,SVN服务器就算搭建完成了,如有疑惑的地方,欢迎留言指出。