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 -- 方…...
零代码玩转珞石机械臂:用图形化编程实现咖啡拉花全流程(附配置文件)
零代码玩转珞石机械臂:用图形化编程实现咖啡拉花全流程(附配置文件) 在精品咖啡文化蓬勃发展的今天,一杯带有精美拉花的拿铁不仅能提升产品附加值,更能为顾客创造独特的消费体验。但对于大多数独立咖啡店主而言&#…...
游戏开发实战:如何用Bezier曲线打造流畅的3D角色动画路径(Unity/C#示例)
游戏开发实战:如何用Bezier曲线打造流畅的3D角色动画路径(Unity/C#示例) 在3D游戏开发中,角色移动轨迹的自然度直接影响玩家体验。传统直线移动或简单弧线往往显得生硬,而Bezier曲线凭借其平滑过渡和灵活控制的特性&am…...
RViz实战:如何用C++在ROS中动态切换不同形状的物体(含避坑指南)
RViz实战:如何用C在ROS中动态切换不同形状的物体(含避坑指南) 在机器人开发过程中,RViz作为ROS生态中的三维可视化利器,其核心价值在于让抽象的数据变得直观可见。而Marker消息系统则是实现这种可视化的关键桥梁——它…...
OpenClaw自动化办公:nanobot镜像处理Excel与PPT文件
OpenClaw自动化办公:nanobot镜像处理Excel与PPT文件 1. 为什么选择OpenClaw处理办公文档? 上周五下午5点,当我面对第7个需要合并的Excel报表时,手指已经因为重复的复制粘贴动作开始发麻。作为团队里负责月度数据汇总的"表哥…...
射频电路50Ω阻抗匹配原理与工程实践
射频电路中50Ω阻抗匹配的工程学解析1. 射频传输线阻抗标准的历史渊源1.1 同轴电缆的阻抗优化历程1929年贝尔实验室的系列实验揭示了同轴电缆的两个关键阻抗值:30欧姆可实现最大功率传输,77欧姆则对应最小传输损耗。这两个数值的算术平均值为53.5欧姆&am…...
宁波小程序公司提供专业的小程序开发服务
在宁波小程序公司的服务中,我们致力于为客户提供清晰的内容结构和流畅的表达。我们通过深入的需求分析,确保每个项目都能符合客户特定的期望和市场需求。设计阶段注重市场调研,力求在视觉和功能上都能满足用户的使用习惯和偏好。开发过程中&a…...
用MediaPipe和Python做个隔空切水果游戏:从手势骨架提取到简单游戏逻辑实现
用MediaPipe和Python打造体感切水果游戏:从手势识别到游戏逻辑全解析 还记得小时候在街机厅玩《水果忍者》的畅快感吗?现在,我们完全可以用Python和MediaPipe技术,在电脑前通过手势隔空切水果!本文将带你从零开始&…...
基于Python的律师事务所案件管理系统毕业设计
博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在开发一套基于Python的律师事务所案件管理系统,以满足现代法律事务处理的高效性和智能化需求。具体研究目的如下: 首先…...
MoMask终极指南:5分钟学会AI生成3D人体运动动画
MoMask终极指南:5分钟学会AI生成3D人体运动动画 【免费下载链接】momask-codes Official implementation of "MoMask: Generative Masked Modeling of 3D Human Motions (CVPR2024)" 项目地址: https://gitcode.com/gh_mirrors/mo/momask-codes 想…...
正点原子IMX6ULL史诗级新内核Linux7.0移植教程(5)梭哈配置主线设备树
正点原子IMX6ULL史诗级新内核Linux7.0移植教程(5)梭哈配置主线设备树 仓库已经开源,可以研究补丁和直接看完整教程:https://github.com/Awesome-Embedded-Learning-Studio/imx-forge 有任何意见欢迎提出 PR!会第一时间…...
