SVN服务端搭建及配置

1.Linux下SVN服务器搭建步骤
1.1.安装服务器程序
使用如下命令安装软件,注意,要使用root权限执行:
yum install subversion
此命令会自动安装适合系统的subversion版本的程序。
测试是否安装成功:
svn --version
访问Apache Subversion官网:https://subversion.apache.org/下的Getting Subversion/Binary Packages菜单,进入package(包)页面,选择Centos Linux,即可看到安装命令,在Centos系统中执行命令即可


1.2.创建版本库
进入Linux系统中,创建subversion版本库,使用如下命令:
mkdir -p opt/svn/repository
在根目录下的opt目录下创建文件夹/opt/svn/repository,用来存放svn的项目,repository是版本库的根目录,项目需要单独创建对应的文件夹,进入repository目录下,创建study_svn项目目录
mkdir study_svn
将study_svn项目创建为svn版本库
svnadmin create opt/svn/repository/study_svn/
创建好后,study_svn目录下有如下文件、文件夹:
- conf:项目的配置文件夹- db:主存储数据目录,存放每个svn提交的版本记录- hooks:钩子程序文件夹- locks:锁定数据文件夹- format:版本库的版本记录,正整数- readme.txt:说明文件
1.3.配置版本库
进入版本库项目下的conf目录:
cd opt/svn/repository/study_svn/conf

- authz:用户授权文件,负责账户的权限管理,读写权限。- passwd:用户认证文件,用户密码。- svnserve.conf:项目配置文件,开启权限、开启功能。
增加用户认证功能:只有认证通过的用户才有读写权限。
修改前请备份文件。
cp authz authz.bakcp passwd passwd.bakcp svnserve.conf svnserve.conf.bak
修改svnserve.conf文件内容,开启授权认证功能:
vi svnserve.conf
打开文件后,使用冒号输入显示行号命令
:set nu
修改内容如下:
[general]password-db = passwdauthz-db = authz
开启授权认证功能。

修改authz文件内容,增加用户权限:
vi authz
点击键盘i键,进入编辑模式,点击esc,退出编辑模式。
修改内容如下:
增加两个用户组
组名 = 用户列表
[groups]admins = admin,rootdevelopers = bobo,test
配置版本库的用户访问权限
# [repository:/study_svn][/]@admins = rw@developers = rwtestr = r
注意:版本库的路径需要使用[/],否则客户端会出现“认证失败”问题。版本库使用用户组进行控制时需要增加@标识,否则指的是用户。

修改passwd文件内容,增加用户和密码:
vi passwd
修改如下内容:
[users]admin = adminroot = rootbobo = bobotest = 1234testr = 1234
增加对应用户的密码。

1.4.监控版本库
svnserve -d(后台运行) -r(监管目录) 版本库路径
svnserve -d -r opt/svn/repository/
svn默认端口号为:3690
访问地址为:
svn://ip地址/xxxx (iP地址为你linux的ip,xxxx为前文创建的版本库名称,3690为svn默认端口)
svn://192.168.179.129/study_svn
即可访问到study_svn项目的svn地址
1.5.防火墙
防火墙配置,默认是不开启3690端口号的,访问不到。
配置防火墙:
查看所有打开的端口:
firewall-cmd --zone=public --list-ports
开启一个端口:
firewall-cmd --zone=public --add-port=3690/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入:
firewall-cmd --reload
查看开启的端口号:
firewall-cmd --zone=public --query-port=3690/tcp
1.6.(弃用)配置SVN对应的服务
以下内容是配置开机自动启动svnserve服务进行监控对应配置的版本库,不用手动启用命令进行版本库发布了。
查看所有服务命令:chkconfig

服务后面的数字0:关,代表是否开机启动。
查看svn服务:
chkconfig|grep svn

如图,则没有发现运行的svn服务。
svn的服务是svnserve
设置svnserve开机自动启动:
chkconfig svnserve on

查看svnserve服务状态:
service svnserve status

状态是未开启状态
查找对应名称的内容
find -name svn

进入/usr/bin/目录下,找到svnserve文件,修改其参数:

修改前先备份文件
cp svnserve svnserve.bak

查看文件信息
vim svnserve-开机自动监控版本库版
修改如下内容:

启动svnserve服务:
service svnserve start
1.7.(弃用)启动SVN服务

2.Eclipse安装SVN插件
首先打开eclipse软件库,Help -> Eclipse Marketplace,打开后搜索Subversion,选择Subclipse的插件进行安装。





