#检查是否已安装SVN 若有要先删除
rpm -qa subversion
yum list | grep subversion 显示只有1.7版本的源
如果想安装高版本
可以创建一个yum repo文件
vim /etc/yum.repos.d/wandisco-svn.repo
内容如下
[WandiscoSVN] name=Wandisco SVN Repo baseurl=http://opensource.wandisco.com/centos/$releasever/svn-1.9/RPMS/$basearch/ enabled=1 gpgcheck=0
检查是否会出现subversion1.9
yum list | grep subversion | grep 1.9
如果有再执行安装svn
yum -y install subversion
查看svn版本信息
svnserve --version
创建代码库
mkdir -p /svnrep
svnadmin create /svnrep
执行命令后,查看/svnrep 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立
配置代码库
cd /svnrep/conf
用户密码passwd配置
vim passwd
[users]下增加2个用户和密码
[users]
zhangsan=123456
lisi=123456
权限控制authz配置 目的是设置哪些用户可以访问哪些目录
vim authz
[/]
zhangsan=rw
lisi=r
*=r
上面配置的含义是,zhangsan对该目录下所有文件具有可读可写权限,lisi只有只读权限,除此之外,其它用户均无任何权限,最后一行*=很重要不能少。
配置svn服务配置文件svnserve.conf
vim svnserve.conf
打开下面的5个注释
anon-access = none #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /svnrep # 认证空间名,改成版本库所在目录
启动svn
svnserve -d -r /svnrep
-d表示守护进程, -r 表示在后台执行
查看svn进程
ps -ef|grep svnserve
检测svn端口
netstat -antlp|grep svnserve
停止svn
killall svnserve
或者
kill -9 进程id
防火墙打开svn服务默认端口3690
systemctl start firewalld
firewall-cmd --zone=public --add-port=3690/tcp --permanent
firewall-cmd --reload
客户端可以连接检出测试
svn://服务器ip
输入用户和密码
设置开机自动启动服务
vim /lib/systemd/system/svnserve.service
内容如下:
#!/bin/sh [Unit] Description=Subversion After=network.target [Service] Type=forking ExecStart=/usr/bin/svnserve -d -r /svnrep PrivateTmp=true [Install] WantedBy=multi-user.target
设置开机自动启动服务
systemctl enable svnserve
启动服务
systemctl start svnserve
重启服务器 测试是否自动启动
来源:https://www.cnblogs.com/zengnansheng/p/10404714.html