Centos7环境下搭建SVN服务器

一、简介

SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。

二、安装

  • 1、通过yum命令安装svnserve,命令如下:
yum -y install subversion

验证安装:

svn help

如果安装成功,就会看见svn的版本信息等;

  • 2、创建SVN仓库目录

我喜欢把svn仓库放在/opt目录下,当然,你也可以根据自己的习惯放在不同的目录,创建目录:

mkdir  /opt/svn

创建一个svn的仓库,我的仓库名叫:goods

svnadmin create /opt/svn/goods/

进入仓库,即可以看见里面的文件

cd /opt/svn/goods/
ls
  • 3、仓库文件说明

hooks目录:放置hook脚步文件的目录
locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端
format目录:是一个文本文件,里边只放了一个整数,表示当前文件库配置的版本号
conf目录:是这个仓库配置文件(仓库用户访问账户,权限)

  • 4、修改配置文件

进入conf目录

cd conf/

配置文件都放在conf目录下,conf目录下的文件包括:

扫描二维码关注公众号,回复: 9436310 查看本文章

authz:负责账号权限的管理,控制账号是否读写权限
passwd:负责账号和密码的用户名单管理
svnserve.conf:svn服务器配置文件

我们首先修改svnserve.conf文件:

vim svnserve.conf

将anon-access前面的注释去掉,将对应的值设置为:none
将auth-access前面的注释也去掉
将password-db前面的注释也去掉
将authz-db前面的注释也去掉
将realm前面的注释也去掉,将对应的值设置为你的svn仓库地址:/opt/svn/goods

注意,在去掉注释后,前面的空格也要去掉
配置说明:

anon-access = none:表示禁止匿名用户访问
auth-access = write:表示授权用户拥有读写权限
password-db = passswd:指定用户名口令文件,即 passwd 文件
authz-db = authz:指定权限配置文件,即 authz 文件
realm = /opt/svn/goods:指定认证域,即/opt/svn/goods 目录

然后修改passwd文件:

vim passwd

在文件末尾追加需要开通的账号和密码,使用 = 号连接,例如:

xiaoming = 123456

注意,用户和密码都是明文显示的

然后修改authz文件:

vim authz

在文件末尾追加一下内容:

[/]
xiaoming=rw

配置说明:

[/]:表示根目录,即 /opt/svn/goods
xiaoming=rw:表示用户xiaoming对根目录具有读写权限

三、开放端口
SVN服务的默认端口为3690,可以通过下面的命令查看:

netstat -antp | grep svn

tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 66486/svnserve

开放3690端口:

sudo firewall-cmd --permanent --add-port=3690/tcp

重启防火墙生效

sudo firewall-cmd --reload

多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题【注意:如果是阿里云,腾讯云的服务器,还需在安全组添加端口开启规则】

四、启动SVN服务

svnserve -d -r /opt/svn/

启动命令说明:

-d:表示svnserve.exe 将会作为一个服务程序运行在后台
-r:表示把/opt/svn目录作为根目录

查看svn服务是否启动成功:

ps -ef | grep 'svnserve'

如果启动失败,有可能是svn服务已经启动了,关闭进程,再次启动即可

killall svnserve
svnserve -d -r /opt/svn/

也可以使用管道的方式查找svn的进程号

ps -ef | grep svn
kill -9 进程号

五、本地连接SVN服务
使用IDEA或者Eclipse等工具安装svn插件后,即可连接svn服务,连接地址为:

svn://ip

本次安装的svn服务是基于svn协议的,并不是常见的http协议,请注意。

好了,本次在Centos7环境下搭建SVN服务器的学习已经全部结束!!!

如您在阅读中发现不足,欢迎留言!!!

发布了63 篇原创文章 · 获赞 66 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_40065776/article/details/100134305