1、安装
CentOS通过yum安装subversion,先登录服务器,使用如下命令安装subversion
[root@mair-001 ~]# yum install subversion
subversion默认安装在/usr/bin/svnserve
检查subversion是否安装成功,如下命令
[root@mair-001 /]# svnserve --version
2.建立版本号
subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置,先查看下svnserve.service文件,如下,发现EnvironmentFile=/etc/sysconfig/svnserve
[root@mair-001 /]# vim /usr/lib/systemd/system/svnserve.service
[Unit]
Description=Subversion protocol daemon
After=syslog.target network.target
[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/svnserve
ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid $OPTIONS
[Install]
WantedBy=multi-user.target
查看/etc/sysconfig/svnserve文件内容
[root@mair-001 /]#vim /etc/sysconfig/svnserve
# OPTIONS is used to pass command-line arguments to svnserve
# Specify the repository location in -r parameter:
OPTIONS="-r /var/svn
OPTIONS="-r /var/svn 为所有版本库默认存放位置,可以自定义
使用svnadmin建立版本库mairuan
[root@mair-001 /]# mkdir -p /opt/svn
与上面OPTIONS设置的目录保持一致
[root@mair-001 /]# svnadmin create /opt/svn/test
这样就在版本库中创建了test仓库
查看test文件目录信息
[root@mair-001 /]# ls /opt/svn/test
conf db format hooks locks README.txt
3.配置
编辑passwd文件,新增用户hahaha, 设置密码为123456
[root@mair-001 test]# vi conf/authz
[users]
hahaha = 123456
编辑权限文件authz,用户longwentao设置可读写权限
[/]
hahaha = rw
编辑svnserve.conf ,打开对应被注释的内容,个别作相应的修改
vim /opt/svn/mairuan/conf/svnserve.conf
[general]
anon-access = none #控制非鉴权用户访问版本库的权限
auth-access = write #控制鉴权用户访问版本库的权限
password-db = passwd #指定用户名口令文件名
authz-db = authz #指定权限配置文件名
realm = firstshop #自定义版本库的认证域,即在登录时提示的认证域名称
4.SVN服务
启动SVN服务
[root@mair-001 test]# systemctl start svnserve.service
检查SVN服务是否启动成功
[root@mair-001 test]# systemctl status svnserve.service
通过netstat可以看到SVN打开了3690端口
[root@mair-001 mairuan]# netstat -tnlp | grep svn
设置开机启动
[root@mair-001 test]# systemctl enable svnserve.service
5.客户端测试
客户端可以通过TortoriseSVN测试