svn服务器的搭建

环境:

linux CentOS 7

安装:

1.安装svn服务器       

1 yum install subversion

2.查看版本

1 svnserve --version

linux离线搭建redis linux离线搭建svn服务器教程_linux离线搭建redis

3.创建版本库

先创建目录

1 mkdir /var/svn

创建版本库

1 cd /var/svn     //先进入svn目录
2 
3 svnadmin create /var/svn/proname   //用svn管理员创建proname库
4 
5 cd  proname    //进入库  
6 
7 ls  //查看库中的文件

linux离线搭建redis linux离线搭建svn服务器教程_配置文件_02

出现上图中的文件,则说明库创建成功。

subversion目录说明

db目录:就是所有版本控制的数据存放文件。

hooks目录:放置hook脚本文件的目录。

locks目录:用来放置subversion见艰苦锁定数据的目录,用来追踪存取文件库的客户端。

format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号。

conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)。

进入conf目录(该svn版本库配置文件)cd conf/

authz文件是权限控制文件

passwd是帐号密码文件

svnserve.conf SVN服务配置文件

设置帐号密码 vi passwd

在[users]块中添加用户和密码,格式:帐号=密码,如suzhan=redhat

linux离线搭建redis linux离线搭建svn服务器教程_svn_03

设置权限 vi authz

在末尾添加如下代码:

[/]

user=rw     说明: (r:读,w:写)

 

linux离线搭建redis linux离线搭建svn服务器教程_linux离线搭建redis_04

修改svnserve.conf文件 vi svnserve.conf

打开下面的几个注释:

anon-access = read #匿名用户可读

auth-access = write #授权用户可写

password-db = passwd #使用哪个文件作为账号文件

authz-db = authz #使用哪个文件作为权限文件

realm = /var/svn/svnrepos # 认证空间名,版本库所在目录

linux离线搭建redis linux离线搭建svn服务器教程_版本库_05

注意:上图中红框内,全部要顶格写,即前面不能有空格

 

启动svn版本库

1  svnserve -d -r /var/svn/svnrepos

停止SVN命令

1 killall svnserve

用ps -ef |grep svn 查看服务是否开启。

linux离线搭建redis linux离线搭建svn服务器教程_linux离线搭建redis_06

在客户端测试

在Windows上用TorwoiseSVN测试

TorwoiseSVN下载地址:tortoisesvn.net/downloads.html 

在windows桌面 或者任意文件夹,空白处右键-->SVN检出

linux离线搭建redis linux离线搭建svn服务器教程_版本库_07

然后,通过SVN服务端的IP下载相应项目,并可以选择检出位置

linux离线搭建redis linux离线搭建svn服务器教程_配置文件_08

检出完成!

linux离线搭建redis linux离线搭建svn服务器教程_linux离线搭建redis_09

注意:第一次登录需要输入账号密码,就是你修改的passwd文件里面的账号密码。

测试可能出现的问题

svn: E000113: Unable to connect to a repository at URL 'svn://IP/repos'无法连接主机“IP”: 由于连接方在一段时间后没有正确答复

linux离线搭建redis linux离线搭建svn服务器教程_linux离线搭建redis_10

原因:CentOS 7 默认不对外开放3690端口

解决方案:

centos7 设置防火墙:

1.开放3690端口:

1 firewall-cmd –permanent –zone=public –add-port=3690/tcp

2.重启防火墙:

1 firewall-cmd –reload