一、安装
# yum install subversion
CentOS 8 也可以使用以下命令安装
# dnf install subversion
查看安装路径
# which svnserve
/usr/bin/svnserve
检查是否安装成功
# svnserve --version
svnserve, version 1.10.2 (r1835932)
程序控制(启动、停止、重启、开机自启)
# systemctl start svnserve.service
# systemctl stop svnserve.service
# systemctl restart svnserve.service
# systemctl enable svnserve.service
查看是否启动成功
# ps -ef | grep svn
/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /var/svn
注意:这里启动的版本库路径为 /var/svn,接下来我们需要将它改成自己所需要的路径
二、建立版本库
1、修改默认启动的版本库路径
# vi /etc/sysconfig/svnserve
/var/svn 改为 /data/svn
注意:根据自己的需求而定,如果不修改的情况下,接下来的教程你需要将 /data/svn 替换成 /var/svn
2、建立版本库 my
# cd /data/
# mkdir svn
# svnadmin create /data/svn/my
# ll /data/svn/my
drwxr-xr-x 2 root root 4096 May 8 16:29 conf >> 主要配置文件
drwxr-sr-x 6 root root 4096 May 8 16:29 db
-r--r--r-- 1 root root 2 May 8 16:29 format
drwxr-xr-x 2 root root 4096 May 8 16:29 hooks
drwxr-xr-x 2 root root 4096 May 8 16:29 locks
-rw-r--r-- 1 root root 246 May 8 16:29 README.txt
三、配置版本库 my
1、进入配置文件夹
# cd /data/svn/my/conf
2、配置 svnserve.conf
# vi svnserve.conf
# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
改为
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
3、配置密码 passwd
# vi passwd
【用户=密码】将内容改为
[users]
admin=chenxiaoyu
guest=123456
4、配置权限 authz
# vi authz
将内容改为
[aliases]
[groups]
[/]
admin=rw
guest=r
5、重启 SVN
# systemctl restart svnserve.service
四、连接测试
访问地址:svn://你的ip地址/my
可以自行测试刚刚设置的读写权限,guest 是无法提交版本库的,没有写的权限。
四、配置多版本库
1、建立版本库 he
# svnadmin create /data/svn/he
2、配置公共化
# cp /data/svn/my/conf/passwd /data/svn/
# cp /data/svn/my/conf/authz /data/svn/
# cp /data/svn/my/conf/svnserve.conf /data/svn
由于多版本库的控制,有多个配置文件,倘若你为每个版本库的 conf 都进行配置一遍就太过于愚昧了,所以我们要做的就是将配置文件公共化。【svnserve.conf】【passwd】【authz】
2.1、设置所有版本库的通用配置 svnserve.conf
# vi /etc/sysconfig/svnserve
OPTIONS=”-r /data/svn”
改为
OPTIONS=”-r /data/svn –config-file=/data/svn/svnserve.conf”
2.2、配置 passwd
# vi /data/svn/passwd
新增用户 my、he,内容改为
[users]
admin=chenxiaoyu
guest=123456
my=123456
he=123456
2.3、配置 authz
# vi /data/svn/authz
内容改为
[aliases]
[groups]
myUserAll=admin,my
myUserRead=guest
heUserAll=admin,he
heUserRead=guest
[my:/]
@myUserAll=rw
@myUserRead=r
[he:/]
@heUserAll=rw
@heUserRead=r
解释:
- [groups] >> 设置组
- myUserAll >> 版本库 my 读写权限
- myUserRead >> 版本库 my 只读权限
- [my:/] >> 版本库 my
- @myUserAll=rw >> @ 是引入组,= rw 配置读写权限
3、重启 SVN
# systemctl restart svnserve.service
- 打赏
- 微信
- 支付宝