SVN服务器配置

来源:互联网 发布:windows上帝模式 编辑:程序博客网 时间:2024/04/28 14:11

创建仓库 svnadmin create /home/svnroot/repository


修改配置文件/home/svnroot/repository/conf/svnserve.conf
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#认证用户的权限,可以是read,write,none,默认为write
auth-access = write
#密码数据库的路径,去掉前面的#

password-db = passwd

#用户操作权限#

authz-db = authz


修改配置文件passwd
[users]
user = passwod

user1 = password1


修改配置文件authz

[test1:/]

user = rw

[test1:/doc]

user1 = rw


对于单个代码仓库

启动命令  svnserve -d -r /home/svnroot/repository/test1 --listen-host 192.168.1.18

其中-d表示在后台运行,-r指定服务器的根目录,这样访问服务器时就可以直接用svn://服务器ip来访问了。如果服务器有多ip的话--listen-host来指定监听的ip地址。

我们可以在svn客户端中通过svn://192.168.1.18来访问svn服务器。

对于多个代码仓库,我们在启动时也可以用-r选项来指定服务器根目录,但访问时需要写上每个仓库相对于svn根目录的相对路径。

比如,我们有两个代码仓库/home/svnroot/repository/test1 和/home/svnroot/repository/test2,我们用svnserve -d -r /home/svnroot/repository --listen-host 192.168.1.18来启动,那么在客户端访问时可以用svn://192.168.1.18/test1和svn://192.168.1.200/test2来分别访问两个项目

启动完成以后,我们可以用ps aux|grep svnserv来查看是否存在svnserve进程。


开放服务器端口

SVN默认端口是3690,你需要在防火墙上开放这个端口。

/sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT

/sbin/service iptables save

你也可以通过svnserve的--listen-port选项来指定一个已经开放的其他端口,不过这样的话客户端使用也必须家上端口,如svn://192.168.1.18:9999/。