Centos7部署SVN
文章目录
- (1)SVN概述
- (2)SVN与Samba共享
- (3)安装SVN
- (4)SVN搭建实例
- (5)pc连接svn服务器
- (6)svn图标所代表含义
(1)SVN概述
SVN(Apache Subversion)是一个开放源代码的版本控制系统,用于管理和跟踪文件和目录的变化。它采用分支管理系统,并旨在取代CVS。以下是关于SVN安装和搭建的基本概述以及Windows连接的步骤:
(2)SVN与Samba共享
SVN还可以用作于企业内部共享,之前就这么干过,其实还行,如果文件大,对本地机器不太友好,但是好处就是存在多个备份。
相对于Samba共享,它具有一些不同的优势。以下是SVN相对于Samba共享的一些优势:
- 版本控制功能:SVN是一个专门为版本控制而设计的工具,它可以跟踪和管理文件和目录的变化,记录每个版本的修改历史,并支持回滚到以前的版本。这使得团队成员可以轻松地协同工作、共享和管理文件,并且可以方便地查看和比较不同版本之间的差异。
- 文件锁定机制:SVN提供了文件锁定机制,可以防止多个用户同时编辑同一个文件而引起的冲突。当一个用户锁定文件时,其他用户无法编辑该文件,从而避免了冲突和数据丢失的风险。这对于团队合作和协同开发非常有用。
- 权限控制:SVN提供了灵活的权限控制机制,可以根据用户和用户组设置不同的访问权限。管理员可以精确地控制用户对仓库和文件的读写权限,从而确保敏感数据的安全性和保密性。
- 分支和合并:SVN支持分支和合并操作,可以创建和管理不同的分支,使团队可以同时进行不同的开发工作。分支可以独立开发和测试,然后合并回主线,从而实现并行开发和代码管理的灵活性。
- 更精细的版本控制:SVN可以跟踪文件和目录的每个修改,包括添加、删除、重命名和移动等操作。这使得团队可以更精细地控制和管理文件的变化,以及查看和恢复到特定的修改点。
总的来说,SVN相对于Samba共享在版本控制、文件锁定、权限控制、分支和合并等方面提供了更强大和灵活的功能,适用于需要更高级别文件管理和协作的企业内部共享环境。
(3)安装SVN
- 检查防火墙状态:
systemctl status firewalld.service

- 关闭防火墙:
systemctl stop firewalld.service - 检查是否已安装SVN:
rpm -qa subversion - 查看已安装版本的详细信息:
svnserve --version - 如果未安装SVN,使用以下命令安装:
yum install subversion -y
(4)SVN搭建实例
-
修改svnserve.conf配置文件:
- 打开配置文件:
vi /home/Admindept/conf/svnserve.conf - 去除以下注释:
anon-access=none(匿名用户不可访问)auth-access=write(授权用户可写)password-db=passwd(使用哪个文件作为账号文件)authz-db=authz(使用哪个文件作为权限文件)realm=/home/Admindept(认证空间名,设置版本库所在目录)
- 打开配置文件:
-
创建项目:
- 创建hr项目:
svnadmin create /home/Admindept - 创建ops项目:
svnadmin create /home/opertion
- 创建hr项目:
-
启动SVN服务:
- 默认使用3690端口:
svnserve -d -r /home/Admindept/ - 如果启动第二个SVN需要指定3691端口:
svnserve -d -r /home/opertion/ --listen-port 3691
- 默认使用3690端口:
-
添加用户和密码:
- 打开passwd文件:
vi /home/Admindept/conf/passwd - 在文件中添加用户和密码,例如:
josh = josh@2023#、annie = annie@2023#
- 打开passwd文件:
-
设置控制权限:
-
打开authz文件:
vi /home/Admindept/conf/authz -
在文件中设置权限,例如:
hr = annie,josh ops = josh[/] @ops = rw @hr = rw[/hr] @hr = rw @ops = rw *=
-
-
关于配置文件的介绍:
- authz:权限控制文件,用于授权用户和组。
- passwd:帐号密码文件,用于连接SVN仓库。
- svnserve.conf:SVN服务配置文件,设置访问控制和认证空间。
(5)pc连接svn服务器
TortoiseSVN在windows非常受到欢迎的一套客户端软体,它与档案总管整合得相当不错,可以透过档案总管在档案或目录上用滑鼠右键的选单完成SVN的操作。
1. 安装TortoiseSVN客户端
svn客户端软件获取地址:http://tortoisesvn.net/downloads/
2. svn客户端安装
双击软件包进行安装,然后下一步下一步直至安装结束即可。

next




3. 使用svn客户端
注意:SVN客户端安装完成之后,需要重启客户端主机。
连接步骤如下:
-
连接SVN服务器,本地创建一个用于存放svn本地仓库的文件夹,右击选择:SVN Checkout

-
连接到SVN服务器:
svn://192.168.217.128:3690/

输入SVN的账户密码

如果内容较多,可能需要等待…拉取

(6)svn图标所代表含义
- 常规图标:当客户端文件和服务端文件完全同步时,显示以上图标

- 冲突图标:当客户端提交的文件和服务器端数据有冲突

- 删除图标:当服务端数据已删除,客户端该文件显示以上图标

- 增加图标:当我们编写的文件添加到提交队列,系统自动显示

- 无版本控制图标:当我们编写的文件没有添加到上传队列时

- 修改图标:当有文件有修改但未提交

- 只读图标:当客户端文件以只读形式存在时

- 锁定图标:当服务端数据已锁定,客户端自动显示

- 忽略图标:客户端文件已忽略,不需要进行提交上传

- 忽略功能如何只忽略某个指定文件,效果如下:

忽略某一类型的文件,如excel的.xlsx文件

相关文章:
Centos7部署SVN
文章目录 (1)SVN概述(2)SVN与Samba共享(3)安装SVN(4)SVN搭建实例(5)pc连接svn服务器(6)svn图标所代表含义 (1)…...
Vue中this.$nextTick的执行时机
一、Vue中this.$nextTick的执行时机,整体可分为两种情况: 第一种:下一次 Dom 更新之后执行(即等待DOM更新结束之后,执行nextTick的延迟回调函数); 第二种:页面挂载后 (m…...
Unity中的ShaderToy
文章目录 前言一、ShaderToy网站二、ShaderToy基本框架1、我们可以在ShaderToy网站中,这样看用到的GLSL文档2、void mainImage 是我们的程序入口,类似于片断着色器3、fragColor作为输出变量,为屏幕每一像素的颜色,alpha一般赋值为…...
2 使用postman进行接口测试
上一篇:1 接口测试介绍-CSDN博客 拿到开发提供的接口文档后,结合需求文档开始做接口测试用例设计,下面用最常见也最简单的注册功能介绍整个流程。 说明:以演示接口测试流程为主,不对演示功能做详细的测试,…...
【数据库设计和SQL基础语法】--查询数据--聚合函数
一、聚合函数概述 1.1 定义 聚合函数是一类在数据库中用于对多个行进行计算并返回单个结果的函数。它们能够对数据进行汇总、统计和计算,常用于提取有关数据集的摘要信息。聚合函数在 SQL 查询中广泛应用,包括统计总数、平均值、最大值、最小值等。 1…...
Module ‘app‘: platform ‘android-33‘ not found.
目录 一、报错信息 二、解决方法 一、报错信息 Module app: platform android-33 not found. 检查你的应用程序的build.gradle文件中的targetSdkVersion和compileSdkVersion是否正确设置为已安装的Android SDK版本。 确保你的Android Studio已正确安装并配置了所需的Android …...
MySQL按序批量操作大量数据
MySQL按序批量操作大量数据(Java、springboot、mybatisplus、ElasticSearch) 以同步全量MySQL数据到ElasticSearch为例。 核心代码 业务逻辑: public boolean syncToElasticsearch() {log.info("Starting data synchronization to El…...
strict-origin-when-cross-origin
严格限制同源策略 (1)允许服务器的同源IP地址访问 (2)允许Referer --- 后端服务器要配置...
【置顶】 本博博文汇总
文章目录 前言音视频ijkplayer源码分析FFmpeg、音视频协议Andriod系统音视频框架C、C Android&Java源码分析、绘制、渲染Dalvik、Art虚拟机Java并发 计算机基础操作系统计算机网络设计模式、数据结构、算法 前言 23年底了,想来也工作十年,也一直在c…...
react.js源码二
三、调度Scheduler scheduling(调度)是fiber reconciliation的一个过程,主要决定应该在何时做什么?在stack reconciler中,reconciliation是“一气呵成”,对于函数来说,这没什么问题,因为我们只想要函数的运行结果,但对于UI来说还需要考虑以下问题: 并不是所有的state更…...
如何学习英语
前言 首先写一些自己的感言吧,其实从大学的时候就在不断地听英语,学英语,但是到毕业十几年后,英语一直没起到什么作用,当然最有作用的时候就是几次英语面试吧。 工作之后有一段学习英语的经历,当时花费了…...
robot测试自动化
一. 安装 黑羽robot 首先确保你电脑上安装好了 Python 3.7 或者 3.8 版本的解释器 hyrobot 使用说明1 | 白月黑羽 安装RF 黑羽robot基于Robot Framework ,所以必须先安装RobotFramework 直接执行如下Pip命令即可: pip install robotframework...
Linux---重定向命令
1. 重定向命令的介绍 重定向也称为输出重定向,把在终端执行命令的结果保存到目标文件。 2. 重定向命令的使用 命令说明>如果文件存在会覆盖原有文件内容,相当于文件操作中的‘w’模式>>如果文件存在会追加写入文件末尾,相当于文件…...
小区生活污水处理需要哪些设备和工艺
在小区生活中,污水处理是一个非常重要的环节,它关乎到环境的保护和居民的生活质量。因此,了解小区生活污水处理所需要的设备和工艺是至关重要的。 首先,在小区生活污水处理中,需要用到的设备包括污水收集系统、初级沉淀…...
【高性能计算】Cpp + Eigen + Intel MKL + 函数写成传引用
CUDA加速原理:CUDA编程学习:自定义Pytorch+cpp/cuda extension 高质量C++进阶[2]:如何让线性代数加速1000倍? 【gcc, cmake, eigen, opencv,ubuntu】三.eigen和mkl安装和使用 Linux下MKL库的安装部署与使用,并利用cmake编译器调用MKL库去提升eigen库的计算速度 Eigen库…...
【教学类-05-02】20231216 (比大小> <=)X-Y之间的比大小88题(补全88格子,有空格分割提示)
作品展示: 背景需求: 1、以前做过一份比大小的题目 【教学类-05-01】20211018 Python VSC 大班 数字比大小(> <)_vsc比较3位数大小-CSDN博客文章浏览阅读674次。【教学类-05-01】20211018 Python VSC 大班…...
【Spark精讲】Spark与MapReduce对比
目录 对比总结 MapReduce流程 编辑 MapTask流程 ReduceTask流程 MapReduce原理 阶段划分 Map shuffle Partition Collector Sort Spill Merge Reduce shuffle Copy Merge Sort 对比总结 Map端读取文件:都是需要通过split概念来进行逻辑切片&…...
SQL错题集3
1.薪水第二多的员工的emp_no以及其对应的薪水salary limit a,b 其中a表示查询数据的起始位置,b表示返回的数量。 (MySQL数据库中的记录是从0开始的) 注意从0开始 2.员工编号emp_no为10001其自入职以来的薪水salary涨幅值growth 聚合函数不能…...
Elasticsearch:使用 OpenAI 生成嵌入并进行向量搜索 - nodejs
在我之前的文章: Elasticsearch:使用 Open AI 和 Langchain 的 RAG - Retrieval Augmented Generation (一)(二)(三)(四) 我详细地描述了如何使用…...
[python高级编程]:02-类
此系列主要用于记录Python学习过程中查阅的优秀文章,均为索引方式。其中内容只针对本作者一人,作者熟悉了解的内容不再重复记录。 目录 01-装饰器 overload -- 方法重载 02-多态 多态和鸭子类型 03-设计模式 抽象基类和接口 01-装饰器 overload -- 方…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
tomcat指定使用的jdk版本
说明 有时候需要对tomcat配置指定的jdk版本号,此时,我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...
【UE5 C++】通过文件对话框获取选择文件的路径
目录 效果 步骤 源码 效果 步骤 1. 在“xxx.Build.cs”中添加需要使用的模块 ,这里主要使用“DesktopPlatform”模块 2. 添加后闭UE编辑器,右键点击 .uproject 文件,选择 "Generate Visual Studio project files",重…...
