一、安装
#安装
yum install subversion
#查看是否安装成功
svnserve --version
二、建库
#创建svn根目录
mkdir -p /var/svn
#创建版本库
cd /var/svn
mkdir my-project
#检查是否创建成功
cd my-project/conf
#有如下配置文件就表示成功 后文你就知道这几个文件分别是干啥的了
authz passwd svnserve.conf
三、配置
1、配置svnserve.conf
vim /var/svn/my-project/conf/svnserve.conf
[general]
anon-access = read #未登录可读 默认,打开注释就行
auth-access = write #登录可写 默认,打开注释就行
password-db = /var/svn/my-project/conf/passwd #用户密码文件的位置
authz-db = /var/svn/my-project/conf/authz #授权文件的路径
realm = /var/svn/my-project #项目的名称
2、配置passwd
vim /var/svn/my-project/conf/passwd
[users]
admin = 123456 #一个用户一行,格式:用户名 = 密码
3、配置authz
vim /var/svn/my-project/conf/authz
[groups]
admin = admin #配置组成员,格式:用户组 = 用户名1,用户名2
[guide-ios:/] #版本库名
admin = rw #给组分配权限,格式:用户组 = 权限
四、启动
svnserve -d -r /var/svn/my-project
#如果报以下错误,表示默认端口3690被占用
svnserve: Can't bind server socket: Address already in use
#开启新的端口
svnserve -d -r /var/svn/my-project --listen-port 3689
#打开防火墙
vim /etc/sysconfig/iptables
#加入下行
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3689 -j ACCEPT
五、确认成功
#地址为svn://youip/版本库名
#版本库名不需要带路径,因为在svnserve.conf的realm中已经配置过
svn co svn://11.22.33.44/my-project
#出现下列代码表示svn服务器搭建成功,可以使用了
Authentication realm: <svn://11.22.33.44:3690> /var/svn/my-project
Password for 'root':