Linux下的SVN服务器的安装
1、检查是否安装了低版本的SVN
rpm -qa | grep subversion
2 卸载旧版本
yum remove subversion
3 安装
yum –y install subversion
4 检查安装是否成功
svnserve –version
5 代码库创建
mkdir -p /var/svn/wuk
svnadmin create /var/svn/wuk
执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf,db,format,hooks,locks, README.txt等文件,说明一个SVN库建立完成。
注意:上面的文件夹不固定 自定义即可
仓库指的就是wuk文件夹
6 如果创建错误想删除代码库:
rm -rf /var/svn/wuk
7 配置配置文件(在conf下面)
文件 svnserve.conf
文件 passwd
文件authz
authz文件格式说明:
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
/ 表示对根目录(即/var/svn/wuk目录)下的所有子目录范围设置权限;
[/abc] 表示对资料库中abc项目设置权限;
创建一个admin组,组成员包括xiaoran.shen和test1
创建一个user组,成员只有test2;
admin组对目录有读写权限;
单个用户test2有读写权限;
*=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。
8 防火墙 3690 端口没有对外开放,因此我们要修改配置文件:
vi /etc/sysconfig/iptables
在中间的位置复制如下代码(如果有就跳过):
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
重启一下防火墙
service iptables restart
9
启动svn服务
svnserve -d -r /var/svn/wuk/
注意:不要使用系统提供的 /etc/init.d/svnserve start 来启动,因为系统默认的启动脚本中没有使用 –r /svn/project参数指定一个资源。这种情况下启动的svn服务,客户端连接会提示“svn: No repository found in 'svn://192.168.11.229/wuk' ”这样的错误。
默认svn服务器端口是3690。
杀死svn服务:
# ps -ef|grep svn
root 4642 1 0 16:08 ? 00:00:00 svnserve -d -r /svn/project/
root 4692 3676 0 16:13 pts/2 00:00:00 grep svn
# kill -9 4642