1. 安装svnserve
卸载旧版本 yum remove subversion,
安装新版本yum install subversion ,
查看安装版本:svnserve --version
2. 创建svn版本库路径
创建版本库根目录:
mkdir -p /opt/svn/repos
建立版本库:
svnadmin create /opt/svn/repos, repos为版本库名称
svnadmin create /opt/svn/repos/xxx , xxx为版本库的名称,可以创建多个版本库
eg:svnadmin create /opt/svn/repos/v1
版本库的建立不能用mkdir命令,应用svn相关命令,版本库svnadmin create
3. 创建完成,进入版本库xxx文件下,可以看到配置文件
进入conf,有3个配置文件authz passwd svnserve.conf
authz:此配置文件设置各用户的授权。读写rw权限。没有列出的用户,则不允许访问。
根目录权限设置,在最后添加如下权限即可
[/] 根目录
user1 = rw
user2 = r
passwd:用户密码,添加
[users]
test1=111111
test2=123456
svnserve.conf 各参数功能在配置文件的注释中有说明, 将注释去掉:
[general]
anon-access = none # 非授权用户无法访问
auth-access = write # 授权用户有写权限
password-db = passwd # 指明密码文件路径
realm = /home/svn/repos # 认证命名空间
#authz-db = authz # 访问控制文件 ,此注释不必打开
左侧不能留空格, 否则会出错.
4.启动
指定svn的根目录:
svnserve -d -r /opt/svn/repos (-d, 后台运行,-r路径)
尝试启动进程 svnserve -d -r /opt/svn/repos/xxx, 这一路径下svn连接不成功
查看进程是否启动:
ps -aux |grep svn
默认listening端口号为3690,可以查看此端口
netstat -plnt |grep 3690
停止启动:
killall svnserve 或者 kill -9 ID (ID为svn进程号)
若果不是3690,查看svn进程监听的是哪个端口:
lsof -i -P -n | grep LISTEN
5.无法连接
url:svn://服务器ip地址:svn监听端口,监听端口默认3690
eg: svn://1.1.1.1:3690
windows客户端连接:首先必须安装svn客户端
在文件夹中右键点击svn checkout,
尝试url; svn://1.1.1.1:3690/ ,连接不成功
如果连接不成功:则检查防火墙
开启防火墙:
/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
/etc/init.d/iptables save
service iptables restart