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

检查已安装版本

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

[root@localhost /]# rpm -qa subversion

#卸载旧版本SVN

[root@localhost /]# yum remove subversion

安装SVN

[root@localhost /]# yum install subversion
PS:yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql(这是安装配合Apache的模块,你可以只装subversion,多装了也无所谓
[root@localhost /]# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
PS:yum install httpd httpd-devel subversion mod_dav_svn 

确认已安装了svn模块

[root@localhost /]# cd /etc/httpd/modules
[root@localhost /]# ls | grep svn
mod_authz_svn.so
mod_dav_svn.so

检查是否安装成功
检验已经安装的SVN版本信息

[root@localhost /]# svnserve --version


svnserve, version 1.6.11 (r934486)
   compiled Aug 17 2015, 08:21:51

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository back-end (FS) modules are available:

* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.

Cyrus SASL authentication is available.

代码库创建
SVN软件安装完成后还需要建立SVN库

[root@localhost /]# mkdir -p /var/svn #我这里把版本库放在了var目录下的svn文件夹,方便管理  
[root@localhost /]# svnadmin create /var/svn/svnproject #我这里将svn作为所有版本库的目录,并创建了一个名为svnproject的版本库

执行上面的命令后,自动建立svnproject库,查看/var/svn/svnproject 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。

说明:
(1)svnserve.conf: svn服务综合配置文件。
(2)passwd: 用户名口令文件。
(3)authz: 权限配置文件

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

[root@localhost /]# cd /var/svn/svnproject/conf

用户密码passwd配置

[root@localhost password]# cd /var/svn/svnproject/conf
[root@admin conf]# vi + passwd

修改passwd为以下内容:

[users]
# harry = harryssecret
# sally = sallyssecret
lwliang=123456

权限控制authz配置

[root@admin conf]# vi + authz

目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容:

#设置[/]代表根目录下所有的资源 
[/]
lwliang=rw
服务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=/var/svn/svnproject

配置防火墙端口

[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

启动SVN

svnserve -d -r /var/svn/svnproject

查看SVN进程

[root@localhost conf]# ps -ef|grep svn|grep -v grep
root     12538     1  0 14:40 ?        00:00:00 svnserve -d -r /var/svn/svnproject

检测SVN 端口

[root@localhost conf]# netstat -ln |grep 3690
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN

停止重启SVN

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

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

版权声明:本文为李维亮博主的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://www.liweiliang.com/338.html

标签: svn

评论已关闭