【SVN】centos7搭建svn--亲测能通

centos7.6搭建svn

  • 1 知识小课堂
    • 1.1 CentOS
    • 1.2 SVN
  • 2 搭建过程
    • 2.1 前期准备
    • 2.2 通过yum命令安装svnserve
    • 2.3 创建版本库目录
    • 2.4 创建svn版本库
    • 2.5 配置修改
    • 2.5 防火墙配置
    • 2.6 启动或关闭svn服务器
      • 2.6.1 进程守护
      • 2.6.2 检测svn端口3690是否已经监听:
      • 2.6.3 关闭SVN
    • 2.7 客户端访问svn服务器
      • 2.7.1 Windows 连接
      • 2.7.2 Linux 连接
  • 3 搭建过程可能遇到的问题
    • 3.1 修改SVN 的端口号
    • 3.2 参考连接

1 知识小课堂

1.1 CentOS

在这里插入图片描述

CentOS(Community ENTerprise Operating System)是Linux发行版之一,中文意思是社区企业操作系统。它是免费的、开源的、可以重新分发的开源操作系统。CentOS Linux发行版是一个稳定的,可预测的,可管理的和可复现的平台,源于Red Hat Enterprise Linux(RHEL)依照开放源代码(大部分是GPL开源协议)规定释出的源码所编译而成。

自2004年3月以来,CentOS Linux一直是社区驱动的开源项目,旨在与RHEL在功能上兼容。每个版本的CentOS都会获得十年的支持(通过安全更新方式),新版本的CentOS大约每两年发行一次。而每个版本的CentOS会定期(大概每六个月)更新一次,以便支持新的硬件。

相对于其他Linux发行版,其稳定性值得信赖。它可以用来构建企业级的Linux系统环境,而不需要向RedHat付任何的费用。CentOS的技术支持主要通过社区的官方邮件列表、论坛和聊天室。

总的来说,CentOS适合那些需要企业级操作系统稳定性,但又不想承担认证和支持成本的人和组织。

1.2 SVN

在这里插入图片描述

官方网站:SVN中文网
SVN,全称为Subversion,是一个开放源代码的版本控制系统。

它的主要功能是管理随时间改变的数据,这些数据可以是文档、源代码等。SVN用于多个人员、设备之间同步不同版本的文档和源代码,从而实现共享资源,最终集中式的管理。简而言之,SVN就是用于多人共同开发同一个项目,实现共享资源,实现最终集中式的管理。

SVN版本控制系统具有速度快、安全性高等优势,被广泛应用于软件程序开发。对于编程人员而言,版本控制技术是团队协作开发的桥梁,有助于多人同步进行大型程序开发。在实际编程中,文件的合并过程一般需要编程人员共同协商决定。

此外,SVN还是一个分支管理系统的高效管理工具。其采用分支管理系统的高效管理方式简化了多个人共同开发同一个项目的流程。通过使用分支管理系统,SVN能够实现共享资源、最终集中式的管理,提高了软件开发和管理的效率。
在这里插入图片描述
以上内容仅供参考,建议咨询计算机领域专业人士或查阅相关文献资料获取更全面和准确的信息。

2 搭建过程

2.1 前期准备

  • 系统环境:centos7
  • 首先关闭防火墙,NetworkManager,selinux
  • 配置好本地yum源
  • centos连接工具:Finalshell
  • 先升级一下命令
    刚装的系统,可能命令有些落后,需要升级
yum update -y

在这里插入图片描述

2.2 通过yum命令安装svnserve

先查看系统中是否存在subversion软件?

rpm -qa|grep subversion

在这里插入图片描述
备注
可能有些centos镜像已经存在,
默认ISO里已经有subversion软件包了,且,最小化版本中已经装好了subversion软件包了;
在这里插入图片描述

如果已存在,可忽略此步骤;若不存在,则利用yum安装此软件:
在这里插入图片描述
如果已存在,可忽略此步骤;若不存在,则利用yum安装此软件:
yum -y install subversion
在这里插入图片描述

查看svn的安装目录

rpm -ql subversion

在这里插入图片描述

查看svn版本:

/usr/bin/svnversion --version

在这里插入图片描述

2.3 创建版本库目录

目录随意,可以自定义目录名。
创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)

选择在var路径下创建版本库:

创建版本库目录,可以一步步操作
创建svn目录

mkdir svn 

进入svn目录中并创建svnrepos目录
cd /home/data/svn

mkdir svnrepos

在这里插入图片描述
当前的目录位置:

/home/data/svn/svnrepos

2.4 创建svn版本库

在2.3 建立的路径基础上,创建版本库,命令如下:

 svnadmin create /home/data/svn/svnrepos/devsvn

(devsvn为你预期的版本库名称,可自定义)
在这里插入图片描述
创建成功后,进入devsvn目录下
在这里插入图片描述
备注:
在这里插入图片描述

2.5 配置修改

进入已经创建好的版本库目录下,也就是前文说创建的test-svn,进入conf

cd /home/data/svn/svnrepos/devsvn

conf目录下,一共存放三份重要的配置文件,如下:
在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述
如上所示:
用户名为:admin,认证密码为:admin

  1. 编辑 authz 文件(注意:[/]也是必须的)

在这里插入图片描述
注意:在最后一行添加即可。

[/] 表示根目录,即 /var/svnrepos

hg = rw 表示用户hg对根目录具有读写权限。

zxl = rw 表示用户zxl对根目录具有读写权限。

  1. 编辑 svnserve.conf 文件(注意:配置的前面不能有空格,一定要顶格写)
    放开一下一些配置。
    在这里插入图片描述

在这里插入图片描述

  • anon-access = none:表示禁止匿名用户访问。

  • auth-access = write:表示授权用户拥有读写权限。

  • password-db = passswd:指定用户名口令文件,即 passwd 文件。

  • authz-db = authz:指定权限配置文件,即 authz 文件。

  • realm = /home/data/svn/svnrepos:指定认证域,即 /home/data/svn/svnrepos 目录。
    这个目录可以写绝对路径

2.5 防火墙配置

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

  1. 查看防火墙状态
firewall-cmd --state

在这里插入图片描述
2. 开启防火墙

systemctl start firewalld.service

在这里插入图片描述

  1. 开启端口
firewall-cmd --zone=public --add-port=3690/tcp --permanent
  1. 重启防火墙
systemctl restart firewalld.service

在这里插入图片描述

  1. 查看已开放的端口
firewall-cmd --list-port

在这里插入图片描述

  1. 防火墙添加配置信息
vi /etc/sysconfig/iptables
  1. 添加配置信息
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT

在这里插入图片描述

  1. 保存退出,命令:【:wq

在这里插入图片描述

systemctl restart iptables.service #重启防火墙使配置生效

2.6 启动或关闭svn服务器

2.6.1 进程守护

svnserve -d -r /home/data/svn/svnrepos

参数:

  • -d:表示后台运行守护模式;
  • -r : 表示svn服务的根目录;
    注意。这里目录指的时版本库存放目录位置

2.6.2 检测svn端口3690是否已经监听:

netstat -antlp|grep svnserve

在这里插入图片描述

netstat -antlp|grep 3690

在这里插入图片描述

ps -ef | grep 'svnserve'

在这里插入图片描述

2.6.3 关闭SVN

这里采取linux杀死进程的方式处理的

ps -ef|grep svnserve

在这里插入图片描述

这里 kill -9 29154杀死进程, 此29154为进程号
在这里插入图片描述

2.7 客户端访问svn服务器

2.7.1 Windows 连接

Windows下常用的客户端软件常用TortoiseSVN。它是一个免费的开源的客户端。
找一个空白文件夹,右键检出。详细配置过程可参考我的主页中 : SVN服务端客户端安装配置

windows客户端,输入地址:svn://ip地址:3690/xxxxiP地址为你linuxipxxxx为前文创建的版本库名称,3690svn默认端口)

弹出输入用户名和密码,输入即可访问

svn://192.168.3.10:3690/devsvn 搭建成功。

在这里插入图片描述
在这里插入图片描述

这里测试增加、修改、删除文件均没问题,一切正常。

2.7.2 Linux 连接

在linux服务器输入命令测试:

svn co svn://ip地址:3690/xxxx

如下为例子:

svn co svn://192.168.3.10:3690/devsvn

在这里插入图片描述
下载的SVN目录在/home目录下
在这里插入图片描述

3 搭建过程可能遇到的问题

3.1 修改SVN 的端口号

注意,这边配置了3693端口口,客户顿无法访问原来的版本库:

本人建议指定端口的启动方式,如果建立多个仓库,也便于管理。

svn默认端口为3690,需要在防火墙添加才可在svn客户端访问

在此,我选择用3693端口启动

启动命令:svnserve -d -r /home/data/svn/svnrepos/ --listen-port 3693

在这里插入图片描述

3.2 参考连接

  • centos7.6搭建svn
  • SVN客户端下载安装教程
  • SVN服务端客户端安装配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/240544.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

随机森林 2(决策树)

通过 随机森林 1 的介绍,相信大家对随机森林都有了一个初步的认知,知道了随机和森林分别指的是什么,以及决策树根据什么选择内部节点。本文将会从森林深入到树,去看一下决策树是如何构建的。网上很多文章都讲了决策树如何构建&…

Linux常用基本命令(三)

一、显示命令 1. cat 通式:cat 选项 文件名 只能看普通的文本文件 缺点:如果内容过多会显示不全 选项效果-n显示行号包括空行-b跳过空白行编号-s讲所有的连续的多个空行替换为一个空行(压缩成一个空行)-A显示隐藏字符 三个标准文件…

【XR806开发板试用】通过http请求从心知天气网获取天气预报信息

1. 开发环境搭建 本次评测开发环境搭建在windows11的WSL2的Ubuntu20.04中,关于windows安装WSL2可以参考文章: Windows下安装Linux(Ubuntu20.04)子系统(WSL) (1) 在WSL的Ubuntu20.04下安装必要的工具的. 安装git: sudo apt-get install git …

【UML】第9篇 类图(概念、作用和抽象类)(1/3)

目录 一、类图的概念 二、类图的主要作用 三、类图的构成 3.1 类的名称 3.2 抽象类(Abstract Class) 一、类图的概念 类图是UML模型中静态视图。它用来描述系统中的有意义的概念,包括具体的概念、抽象的概念、实现方面的概念等。静态视…

服务器数据恢复-误操作导致xfs分区数据丢失的数据恢复案例

服务器数据恢复环境: 某品牌OceanStorT系列某型号存储MD1200磁盘柜,组建的raid5磁盘阵列。上层分配了1个lun,安装的linux操作系统,划分两个分区,分区一通过lvm进行扩容,分区二格式化为xfs文件系统。 服务器…

深入了解C编译管道

文章目录 引言1. 预处理阶段2. 编译阶段3. 汇编阶段4. 链接阶段5.流程图结论 引言 C编译管道是软件开发中至关重要的工具,它负责将C语言源代码转换为可执行的机器代码。理解C编译管道的工作原理有助于提高代码的可读性、可维护性,并有助于优化生成的可执…

css画三角形

css画三角形 <!doctype html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport"content"widthdevice-width, user-scalableno, initial-scale1.0, maximum-scale1.0, minimum-scale1.0"&g…

python调用GPT API

每次让gpt给我生成一个调用api的程序时&#xff0c;他经常会调用以前的一些api的方法&#xff0c;导致我的程序运行错误&#xff0c;所以这期记录一下使用新的方法区调用api 参考网址 Migration Guide&#xff0c;这里简要地概括了一下新版本做了哪些更改 OpenAI Python API l…

WEB 3D技术 three.js 设置图像随窗口大小变化而变化

本文 我们来讲讲我们图层适应窗口变化的效果 可能这样说有点笼统 那么 自适应应该大家更熟悉 就是 当我们窗口发生变化说 做一些界面调整比例 例如 我们这样一个i项目界面 我们打开 F12 明显有一部分被挡住了 那么 我们可以刷新 这样是正常了 但是 我们将F12关掉 给F12的…

Uniapp 开发 BLE

BLE 低功耗蓝牙&#xff08;Bluetooth Low Energy&#xff0c;或称Bluetooth LE、BLE&#xff0c;旧商标Bluetooth Smart&#xff09;&#xff0c;用于医疗保健、运动健身、安防、工业控制、家庭娱乐等领域。在如今的物联网时代下大放异彩&#xff0c;扮演者重要一环&#xff…

PIC单片机项目(8)——基于PIC16F877A的温度光照检测装置的protues仿真

1.功能设计 使用PIC16F877A单片机&#xff0c;进行温度检测、光照检测。温度使用的是DS18B20&#xff0c;光照检测直接利用的AD转换。 光照太暗就开灯&#xff0c;温度太高就开风扇。温度阈值和光照阈值都实时显示在LCD1602屏幕上面。 完成了protues仿真。文件里面包含代码和仿…

Liteos移植_STM32_HAL库

0 开发环境 STM32CubeMX(HAL库)keil 5正点原子探索者STM32F4ZET6LiteOS-develop分支 1 STM32CubeMX创建工程 如果有自己的工程&#xff0c;直接从LiteOS源码获取开始 关于STM32CubeMX的安装&#xff0c;看我另一篇博客STM32CubeMX安装 工程配置 创建新工程 选择芯片【STM32F…

第一次记录QPSK,BSPK,MPSK,QAM—MATLAB实现

最近有偶然的机会学习了一次QPSK防止以后忘记又得找资料&#xff0c;这里就详细的记录一下 基于 QPSK 的通信系统如图 1 所示&#xff0c;QPSK 调制是目前最常用的一种卫星数字和数 字集群信号调制方式&#xff0c;它具有较高的频谱利用率、较强的抗干扰性、在电路上实现也较为…

蓝牙物联网智能家居安防检测系统解决方案

随着科学技术的发展&#xff0c;我们的生活方式正在进行着翻天覆地的变化。互联网技术的实现推动了物联网新模式的出现改变着我们生活&#xff0c;使我们的社会生产生活变得更加的便利与人性化。借此现如今我们的生活方式更是向智能家居方向所发展&#xff0c;这一课题正在被相…

电脑组件整理(持续更新...)

1、*芯片 CPU(承担着负责的运算)&#xff1b; 量大阵营&#xff1a; AMD &#xff5c; Intel i5 12400F 6核12线 7nm -- 1189元 r7 5700x 8核16线 7 nm -- 1500元&#xff1b; ARM采用的是RISC精简指令集计算、 主要应用于移动终端之中&#xff0c;类如手机&#xff0c…

了解树和学习二叉树

1.树 1.1 概念 树是一种 非线性 的数据结构&#xff0c;它是由 n &#xff08; n>0 &#xff09;个有限结点组成一个具有层次关系的集合。 把它叫做树是因为它看 起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的 。 注意&#xff1a;树形结构中…

Kafka核心参数(带完善)

客户端 api Kafka提供了以下两套客户端API HighLevel(重点)LowLevel HighLevel API封装了kafka的运行细节&#xff0c;使用起来比较简单&#xff0c;是企业开发过程中最常用的客户端API。 而LowLevel API则需要客户端自己管理Kafka的运行细节&#xff0c;Partition&#x…

Linux-Keepalived(VRRP协议)高可用集群搭建

Linux-Keepalived&#xff08;VRRP协议&#xff09;高可用集群搭建 一、VRRP简介1.1 什么是VRRP&#xff1f;1.2 keepalived是什么&#xff1f;1.3 keepalived工作原理 二、实操配置过程2.1 试验模型2.2. Keepalived监控和维护VRRP集群的步骤2.2.1 安装keepalived2.2.2 配置kee…

sql_lab之sqli中的head头注入,less18

报错注入中的head注入&#xff08;less-18&#xff09; 1.输入用户名和密码123 123显示登录错误 2.输入用户名和密码123’ 123显示登录错误 则证明不是普通报错注入&#xff0c;因为有用户名和密码框&#xff0c;如果不是普通报错注入则尝试head注入 3.用burp进行爆破&#x…

【已解决】在使用frp内网穿透访问VUE项目提示:Invalid Host/Origin header 解决方案

项目配置 在使用frp作为内网穿透的时候&#xff0c;配置了多端口穿透(也是第一次配置frp多端口)&#xff0c;端口配置如下&#xff1a; 8079&#xff1a;vue项目的管理系统 8080&#xff1a;vue项目的前台系统 8082&#xff1a;普通的web项目 更高frp相关问题 &#x1f4…