一、安装svn
# 安装subversion
yum install subversion
# 查看subversion的安装路径
rpm -ql subversion
二、创建svn版本库
# 创建svn版本库所在目录
mkdir -p /data/svn/svn_repository
# 创建版本库
svnadmin create /data/svn/svn_repository
三、svn版本库内部分目录和文件作用说明
1.进入目录/data/svn/svn_repository下,如下图:
conf目录:主要是配置文件、登录用户、密码认证;
hooks目录:主要是svn的钩子脚本模板,使用时去掉.tmpl后缀即可,钩子脚本实际上就是代码提交前后,可以分别执行的脚本,脚本可用perl、shell、python等语言编写,该目录里面脚本文件名代表提交代码执行的不同时机,如提交代码前执行的脚本pre-commit,提交代码后执行的脚本post-commit,更多详情自行学习;
2.进入目录/data/svn/svn_repository/conf下,如下图:
authz文件是权限控制文件
passwd是帐号密码文件
svnserve.conf SVN服务配置文件
四、svn版本库配置
步骤1、进入目录/data/svn/svn_repository/conf下;
步骤2、设置账号密码
编辑用户文件passwd,新增两个用户:admin和guest。
在[users]块中添加用户和密码,格式:帐号=密码,如admin = 123qwe
完整内容参考下面:
步骤3、设置用户权限
编辑权限文件authz,用户admin设置可读写权限,guest设置只读权限。
完整内容参考如下:
[groups]
admin = admin
guest = guest
[/]
@admin = rw
@guest = r
步骤4、设置SVN服务配置
编辑svnserve.conf,完整内容如下:
$ cat svnserve.conf
[general]
anon-access = none #控制非鉴权用户访问版本库的权限
auth-access = write #控制鉴权用户访问版本库的权限
password-db = passwd #指定用户名口令文件名
authz-db = authz #指定权限配置文件名
realm = /data/svn/svn_repository/ #认证空间名,版本库所在目录
五、检查端口是否打开
svn服务的默认端口为3690,比如我部署在阿里云服务器上,必须先在阿里云控制台打开3690端口的外部访问权限。
#centos查询端口是不是开放的
firewall-cmd --permanent --query-port=3690/tcp
#添加对外开放端口
firewall-cmd --permanent --add-port=3690/tcp
#重启防火墙
firewall-cmd --reload
#查看端口监听情况
netstat -nlp
六、设置开机启动:
1、subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置,如下图:
2、启动svn版本库命令如下:
systemctl start svnserve.service
3、设置开机启动
systemctl enable svnserve.service
七:svn客户端检出(纯svn):
1.下载svn客户端
下载地址:https://tortoisesvn.net/downloads.html
2.进入本地代码库所在目录右键checkout,远程库地址按下图填写:
3.输入账号和密码后,点击【OK】,如下图:
来源:CSDN
作者:Radioman-lhq
链接:https://blog.csdn.net/q13554515812/article/details/83583056