CentOS Linux release 7.9
svn, version 1.7.14
#1、使用yum默认安装 subversion
yum install subversion -y
#2、安装完成查询版本,显示版本号则安装成功
svn --version
#3、根据项目需要自定义版本库目录,如需多个版本库就创建多个不同的版本库目录,创建版本库目录
mkdir -p /home/QSi/svn/
#4、根据项目需要可创建多个版本库,这里就以一个为例,根据创建好的目录,创建版本库
svnadmin create /home/tools/svn/
#5、查看创建版本库后的文件,这里主要配置文件在conf下
]# ls /home/tools/svn/
conf db format hooks locks README.txt
#6、进入版本库目录
]#cd /home/tools/svn/conf
#7、查看当前目录下的文件
conf]# ls
authz passwd svnserve.conf
#8、进入配置文件,在配置参数最后加入如下配置:注:在linux服务端版本库直接创建目录是不能被客户端识别的,目录需在客户端进行创建后上传至服务端
conf]# vim authz
#所有已注册用户可读
[svn:/] #svn版本库根目录所有用户可读
* = r
[svn:/ECS/baseline] #svn是当前版本库,/ECS/baseline是配置权限后通过客户端创建的目录;
#baseline目录以下用户可读写
shiyue = rw
[svn:/ECS/undercontrol]
#undercontrol目录以下用户可读写
shiyue = rw
gaoyan = rw
marui = rw
zhangyongchao = rw
[svn:/ECS/works]
#works目录下所有已注册用户可读写
* = rw
[svn:/公共库]
#works目录下所有已注册用户可读写
* = rw
#9、进入passwd配置文件新增用户名及密码
[users]
zhangsan = 123456 #前为用户名=后为用户密码
lisi = 123456
#10、进入综合配置文件打开以下参数注释
conf]# vim/svnserve.conf
anon-access = none #修改为不可匿名登陆
auth-access = write
password-db = passwd #用户及密码配置文件,默认在版本库的conf文件夹下,如有修改建议改成文件的绝对路径
authz-db = authz #权限配置文件,默认在版本库的conf文件夹下,如有修改建议改成文件的绝对路径
#11、svn默认端口为3690,这里采用指定目录,指定端口12690启动;
注:指定启动的目录为版本库的上级目录,若直接指定版本库目录启动在客户端时会出现找不到文件的报错,如多个项目可根据版本库的目录换一个指定端口启动
svnserve -d -r /home/QSi --listen-port 11690
启动后修改配置文件后不需要重启svn服务,svn会自动热加载。
提示:如需多个项目版本库使用同一端口,可直接在/home/QSi下创建项目目录生成版本库,权限配置及用户密码可使用同一文件,也可根据需求重新配置,同一运行目录同一端口下不需要重新启动svn,直接在客户端测试即可
#12、客户端测试
客户端下载地址:https://dl.pconline.com.cn/download/53122.html
svn://192.168.124.113:11690/svn #svn是版本库目录