Centos7环境下搭建SVN服务器

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

一、简介

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 目录下的文件包括:

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 服务器的学习已经全部结束!!!

目录
相关文章
|
24天前
|
传感器 网络协议 物联网
手把手教你在 Windows 环境中搭建 MQTT 服务器
手把手教你在 Windows 环境中搭建 MQTT 服务器
107 0
|
26天前
|
NoSQL 关系型数据库 MySQL
《花100块做个摸鱼小网站! 》第一篇—买云服务器和初始化环境
本文是技术博主summo分享的个人网站搭建教程。从选择阿里云免费试用或付费的云服务器开始,逐步介绍如何搭建网站所需的基础环境。作者选择了2核2G、3M固定带宽的配置,并使用CentOS 7.9 64位作为操作系统镜像。接着详细说明了JDK 8、Redis和MySQL 8.0的安装过程,包括配置与启动服务、设置远程访问等关键步骤。特别强调了阿里云安全组规则的重要性,确保服务器端口正确开放。通过本教程,即使是初学者也能跟随步骤轻松完成环境搭建,为后续的网站开发打下坚实的基础。
76 5
《花100块做个摸鱼小网站! 》第一篇—买云服务器和初始化环境
|
25天前
|
存储 安全 Linux
新 CentOS 7 服务器的基本配置
新 CentOS 7 服务器的基本配置
24 1
|
28天前
|
Android开发
svn服务器配置常见问题
svn服务器配置常见问题
46 1
|
1月前
|
运维 网络协议 Linux
揭秘CentOS 7:系统目录奥秘大起底,网卡配置秒变高手,让你的服务器管理飞一般的感觉!
【8月更文挑战第5天】CentOS 7作为RHEL的社区版本,以其稳定性和丰富功能广受好评。本文通过案例分析介绍其系统目录结构及网卡配置方法。系统目录如/(根)、/bin(基本命令)、/boot(启动文件)、/dev(设备文件)、/etc(配置文件)、/home(用户目录)和/lib(共享库)等各司其职。网卡配置通过编辑/etc/sysconfig/network-scripts/下的ifcfg文件实现,如设置ens33接口的静态IP地址、子网掩码、网关和DNS服务器,并通过重启网络服务使配置生效。这是系统管理员必备的技能之一。
42 2
|
1月前
|
存储 Unix 数据挖掘
服务器数据恢复—SAN环境下LUN Mapping出错导致文件系统一致性出错的数据恢复案例
服务器存储数据恢复环境: 一台存储中有一组由6块硬盘组成的RAID6,划分为若干LUN,MAP到不同业务的SOLARIS操作系统服务器上。 服务器存储故障: 由于业务变化需要增加一台服务器,在存储在线的状态下将该存储中的某个LUN映射到这台新增加的服务器上并开始初始化,不料映射的这个LUN已经MAP到其他SOLARIS服务器上了。由于该LUN已经进行了部分的初始化,磁盘报错,重启后发现卷无法挂载。
|
24天前
|
网络协议 Linux Shell
如何在运行Centos 6的虚拟服务器上安装cPanel
如何在运行Centos 6的虚拟服务器上安装cPanel
16 0
|
24天前
|
关系型数据库 MySQL Linux
在 CentOS 7 服务器上安装和保护 phpMyAdmin 与 Apache 的方法
在 CentOS 7 服务器上安装和保护 phpMyAdmin 与 Apache 的方法
29 0
|
25天前
|
Linux 数据安全/隐私保护
在CentOS 7服务器上添加和删除用户的方法
在CentOS 7服务器上添加和删除用户的方法
19 0
|
1月前
|
网络安全 数据安全/隐私保护 iOS开发
【Mac os】如何在服务器上启动Jupyter notebook并在本地浏览器Web端环境编辑程序
本文介绍了如何在服务器上启动Jupyter Notebook并通过SSH隧道在本地浏览器中访问和编辑程序的详细步骤,包括服务器端Jupyter的启动命令、本地终端的SSH隧道建立方法以及在浏览器中访问Jupyter Notebook的流程。
43 0