当前位置: 首页 > news >正文

【Java】SVN 版本控制软件的快速安装(可视化)

目录

一、SVN 的概述

1.1 SVN 的概念

1.2 SVN 与 Git 的对比

1.3 SVN 软件

二、SVN 的安装

2.1 SVN 的工作流程

2.2 服务器端 SVN 的安装

三、SVN 服务器端的配置

3.1 搭建项目

3.2 权限控制

四、SVN 客户端的配置

4.1 SVN 客户端的下载

4.2 客户端连接 SVN 服务器


一、SVN 的概述

1.1 SVN 的概念

SVN(Subversion)是一款集中式版本控制系统,由 CollabNet 在 2000 年推出,旨在改进早期的 CVS(Concurrent Versions System)。其核心特点是存在一个中央服务器,所有代码版本和历史记录都存储在中央服务器中,开发者需通过客户端连接服务器进行代码的检出(checkout)、提交(commit)、更新(update)等操作。

  • 工作流程:开发者从中央服务器检出代码到本地,修改后提交到服务器,提交前需先更新本地代码以解决冲突,所有操作依赖中央服务器的在线连接。
  • 数据存储:以文件变更列表(delta)的形式存储版本历史,即只记录不同版本间的差异,节省存储空间。

1.2 SVN 与 Git 的对比

  • SVN 的核心优势:集中式架构简单、权限控制精细、新手易理解,适合小型、权限敏感的项目。
  • SVN 的主要劣势:依赖中央服务器、分支合并低效、离线功能弱,难以适应大型或灵活的协作场景。
  • Git 的核心优势:分布式架构容错性强、分支操作高效、支持离线工作,适合大型团队和敏捷开发。
  • Git 的主要劣势:学习成本较高、本地存储占用大、权限控制较复杂,对新手不够友好。

1.3 SVN 软件

1. 客户端软件:https://tortoisesvn.net/

2. 服务器端软件:Subversion Server for Windows | VisualSVN Server

二、SVN 的安装

2.1 SVN 的工作流程

2.2 服务器端 SVN 的安装

1. 双击安装程序

2. 选择下一步

三、SVN 服务器端的配置

3.1 搭建项目

1. 首先创建一个公有目录 WebApp 作为项目目录

2. 在 WebApp 中创建 Shop 文件夹,作为版本仓库

3. 创建版本仓库

svnadmin create Shop(文件夹绝对路径)

4. 进行服务器端监管

# svn://localhost 访问相关数据库
基本语法:
svnserve -d(后台运行) -r(监管目录)
案例:
svnserve -d -r D://WebApp/Shpt

通过上述指令,可以将当前 SVN 指向 Shop版本仓库,后续通过 svn://localhost 就可以直接指向该仓库。

3.2 权限控制

默认情况下, SVN 服务器不允许匿名用户上传文件到服务器,此时需要更改项目的相关配置文件

四、SVN 客户端的配置

4.1 SVN 客户端的下载

1.下载安装包地址:https://tortoisesvn.net/downloads.html:此安装包是英文版的,还可以下载一个语言包,在同界面的下方

2. 下载语言安装包:

3. 先安装SVN,再安装语言包,不然是会报错的

4.选择红框

5.安装语言包,双击即可,然后下一步,完成

6. SVN客户端不是指一个桌面应用程序,而是集成到系统的右键菜单中的插件。因此使用客户端向资源库下载项目资源、提交项目资源等都是通过右键菜单来完成的。在桌面空白处右键:

7. 选择 设置 ,打开设置面板, 可以设置语言:选择中文

4.2 客户端连接 SVN 服务器

首先在项目目录鼠标右键==》TortoiseSVN===》检出

http://www.dtcms.com/a/293051.html

相关文章:

  • Qt中的栅格布局的核心机制与栅格布局中的元素隐藏后重新排列布局解决方案解析
  • 基于CH32V203F8P6 interface_debug_print支持浮点格式输出
  • 模型优化-------模型压缩
  • Python之格式化Conda中生成的requirements.txt
  • timesFM安装记录
  • JavaWeb学习打卡10(HttpServletRequest详解应用、获取参数,请求转发实例)
  • PyTorch常用工具
  • 我的第一个开源项目 -- 实时语音识别工具
  • C++中的list(2)简单复现list中的关键逻辑
  • 水电站自动化升级:Modbus TCP与DeviceNet的跨协议协同应用
  • CMake实践:CMake3.30版本之前和之后链接boost的方式差异
  • 渗透部分总结
  • 从 COLMAP 到 3D Gaussian Splatting
  • vue2的scoped 原理
  • Flex/Bison(腾讯元宝)
  • 开源AI智能客服、AI智能名片与S2B2C商城小程序在客户复购与转介绍中的协同效应研究
  • 禁食时长与关键生物反应的相对强度对照表
  • syscall函数用法
  • Java 中 String 类的常用方法
  • JavaScript的进阶学习--函数和基本对象的解析
  • 16-MSTP
  • 加速度计输出值的正负号与坐标系正方向相反
  • 基于 Agent 的股票分析工具
  • Windows Server 设置MySQL自动备份任务(每日凌晨2点执行)
  • 洛谷刷题7..22
  • 贪心算法Day3学习心得
  • VBScript 拖拽文件显示路径及特殊字符处理
  • gitlab私服搭建
  • 根据数据,判断神经网络所需的最小参数量
  • 如何搭建appium工具环境?