检查是否安装了低版本的SVN
yum remove subversion
安装必须的软件包
yum install subversion
yum install mod_dav_svn
yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
检验已经安装的SVN版本信息
[[email protected] ~]# svnserve --version
svnserve, version 1.7.14 (r1542130)
compiled Sep 30 2020, 15:40:14
Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository back-end (FS) modules are available:
* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.
Cyrus SASL authentication is available.
创建代码库
mkdir -p /data/svn/repositories
svnadmin create /data/svn/repositories
执行上面的命令后,自动建立repositories库,查看/data/svn/repositories 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。
cd /data/svn/repositories
[[email protected] repositories]# ls
conf db format hooks locks README.txt
进入上面生成的文件夹conf下,进行配置
cd /data/svn/repositories/conf
配置用户名密码
[email protected]-1789 conf]# vi passwd
[users]
gaodaojiang= gaoaojiangxxxx
zhangsan= zhangsanxxxxx
配置权限
[[email protected] conf]# vi authz
[groups]
admin =gaodaojiang
#研发一组权限
java1=gaodaojang,zhangsan
[/]
@admin = rw
* =
#java程序代码
[/java]
@admin = rw
@java1= rw
* =
服务svnserve.conf配置
[[email protected] conf]# vi svnserve.conf
anon-access=none
auth-access=write
password-db = passwd
authz-db=authz
realm=/data/svn/repositories
停止SVN
kill -9 进程id
启动 默认端口为3690。
检查启动情况
[[email protected] ~]# netstat -tunlp | grep svn
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 2183/svnserve
svn 迁移
原来的服务器:118.168.xx.xx.xx
现在的服务器:11256.xx.xx.xx
进入118.168.xx.xx.xx
svnadmin dump /data/svn/repositories > /data/svnbak.dump
进入11256.xx.xx.xx服务器
cd /data/svn/
svnadmin load repositories< svnbak.dump