【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.hqwc.cn/news/295241.html

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

相关文章

PyCharm控制台异常堆栈乱码问题解决

目录 1、问题描述2、问题原因3、问题解决 1、问题描述 PyCharm环境都已经配置成了UTF-8编码,控制台打印中文也不会出现乱码,但异常堆栈信息中如果有中文会出现中文乱码: 这种该怎么解决呢? 2、问题原因 未将PyCharm编码环境与项目…

初学链表(分析建立学生信息链表)

本题要求实现一个将输入的学生成绩组织成单向链表的简单函数。 #include <stdio.h> #include <stdlib.h> #include <string.h> struct stud_node { int num; char name[20]; int score; struct stud_node *next; }; struct stu…

vcruntime140_1.dll文件下载安装方法分享,如何安全修复vcruntime140_1.dll

遇到vcruntime140_1.dll文件遗失是用户在使用Windows操作系统时较为普遍遭遇到的一个问题&#xff0c;它归类于动态链接库&#xff08;DLL&#xff09;文件缺失的常见情形。在今天的内容里&#xff0c;我们将深入探讨如何正确地下载和安装vcruntime140_1.dll文件&#xff0c;以…

使用docker创建自己的Android编译容器

文章目录 背景步骤1.创建Dockerfile2.编写Dockerfile指令3.编译4.使用 背景 每次拿到新机器或者系统重装&#xff0c;最麻烦的就是各种环境配置&#xff0c;最近学习了一下docker的知识&#xff0c;用dockerfile创建一个Android编译容器&#xff0c;这样就不用每次都吭哧吭哧的…

第九周算法题(哈希映射,二分,Floyd算法 (含详细讲解) )

第九周算法题 第一题 题目来源&#xff1a;33. 搜索旋转排序数组 - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a;整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 <…

R软件包ConsensusCluster进行共识聚类(Consensus Clustering)

从下面论文看到这个方法&#xff1a; Wang, Xin, et al. "Deep learning using bulk RNA-seq data expands cell landscape identification in tumor microenvironment." Oncoimmunology 11.1 (2022): 2043662. 这篇论文基于 AI 方法对 bulk RNA-seq 数据识别肿瘤微环…

Python入门知识点分享——(八)文件的open方法

学完了Python当中的数据类型&#xff0c;下一步我们来了解如何用Python语言打开文件并添加内容。 目录 file mode buffering encoding errors newline closefd opener 函数 打开文件需要用到open函数&#xff0c;完整的语法格式如下所示&#xff0c;为了演示方便&…

内部FLASH模拟EPPROM

本例程基于STM32F103ZET6 FLASH大小为512K。 介绍FLASH 不同型号的 STM32&#xff0c;其 FLASH 容量也有所不同&#xff0c;最小的只有 16K 字节&#xff0c;最大的则达到了 1024K 字节。我们的精英 STM32 开发板选择的是 STM32F103ZET6 的 FLASH 容量为 512K 字节&#xff0…

Centos安装vsftpd:centos配置vsftpd,ftp报200和227错误

一、centos下载安装vsftpd&#xff08;root权限&#xff09; 1、下载安装 yum -y install vsftpd 2、vsftpd的配置文件 /etc/vsftpd.conf 3、备份原来的配置文件 sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.backup 4、修改配置文件如下&#xff1a;vi /etc/vsftpd.conf …

基于Java SSM框架实现实现班级同学录、聚会报名网站系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现班级同学录聚会报名网站系统演示 摘要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff0c;人们对于信息科学化的认识&#xff0c;已由低层次向高层次发展&#xff0c;由原来的感性认识向理性认识提高&#xff0c;管理工作的重要性已逐渐被人…

懂机器学习?先来回答这三个问题 >>

机器学习是一种数据分析技术&#xff0c;让计算机学习人类和动物与生俱来的能力&#xff1a;从经验中学习。 机器学习算法使用计算方法直接从数据中“学习”信息&#xff0c;而不依赖于预定方程作为模型。 随着可用于学习的样本数量的增加&#xff0c;算法也会相应地提高性能。…

html5实现最高端的公司年会抽奖(源码)

文章目录 1.设计来源1.1 主界面1.2 抽奖效果1.3 中奖效果 2.效果和源码配置2.1 动态效果2.2 员工信息配置2.3 奖品信息配置2.4 抽奖音效配置2.5 源代码 源码下载 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_43151418/article/details/13517192…