[转载]CentOS 6 SVN搭建 (YUM安装)

安装说明
安装了一下SVN服务器,过程如下:

系统环境:CentOS 6
安装方式:yum install (源码安装容易产生版本兼容的问题)
安装软件:系统自动下载SVN软件

检查是否安装了低版本的svn

[root@localhost /]# rpm -qa subversion

如果存储旧版本,卸载旧版本svn

[root@localhost modules]# yum remove subversion

安装svn

[root@localhost modules]# yum install subversion -y

验证安装

检验已经安装的SVN版本信息

[root@localhost modules]# svnserve --version

代码库创建

svn软件安装完成后还需要建立svn库

[root@localhost modules]# mkdir -p /opt/svn/repos

执行下面的命令后,自动建立repo测试库,查看/opt/svn/repos

[root@localhost modules]# svnadmin create /opt/svn/repos

配置代码库

进入上面生成的文件夹conf下,进行配置

[root@localhost modules]# cd /opt/svn/repos/conf

用户密码passwd配置

[root@localhost password]# cd /opt/svn/repos/conf
[root@admin conf]# vim passwd

修改passwd为以下内容:

[users]
harry = harryssecret
sally = sallyssecret
hello=123
用户名=密码

这样我们就建立了hello用户, 123密码
以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

权限控制authz配置

[root@admin conf]# vi authz
目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容:

设置[/]代表根目录下所有的资源
[/] 或者写成[repos:/]
hello = rw

意思是hello用户对repos测试库下所有的目录有读写权限,当然也可以限定。
如果是自己用,就直接是读写吧。

以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

服务svnserve.conf配置

[root@admin conf]# vi svnserve.conf

追加以下内容:

[general]
匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
使授权用户有写权限
auth-access=write
密码数据库的路径
password-db=passwd
访问控制文件
authz-db=authz
认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/opt/svn/repos

以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

启动svn版本库

svnserve -d -r /opt/svn/repos

常见问题解决

  1. 解决svnserve: Can't bind server socket: Address already in use

启动svn和指定端口的方法是:
svnserve -d -r /opt/svn/repos --listen-port 3691

记得让防火墙放过3691端口哦,不然无法访问,svn的默认端口是3690.

  1. 查找SVN所用的端口

netstat -antple | grep svn

  1. 清除svn进程

killall svnserve

  1. 配置防火墙端口

[root@localhost conf]# vi /etc/sysconfig/iptables
添加以下内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存后重启防火墙
[root@localhost conf]# service iptables restart

  1. 查看SVN进程

[root@localhost conf]# ps -ef|grep svn|grep -v grep

  1. 检测SVN 端口

[root@localhost conf]# netstat -ln |grep 3690

  1. 停止重启SVN

[root@localhost password]# killall svnserve //停止
[root@localhost password]# svnserve -d -r /opt/svn/repos // 启动

  1. 如果已经有svn在运行,可以换一个端口运行

svnserve -d -r /opt/svn/ --listen-port 3391

  1. 测试

SVN服务已经启动,使用客户端测试连接。
客户端连接地址:svn://服务器ip:启动端口
用户名/密码: hello/123
测试创建文件夹等操作。

引用来源

你可能感兴趣的:([转载]CentOS 6 SVN搭建 (YUM安装))