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

【SVN-TortoiseSVN】SVN 的简介与TortoiseSVN 安装使用教程

目录

🌞前言

🌊1. SVN 的简介

🌍1.1 SVN是什么

🌍1.2 SVN 工作原理

🌍1.3 TortoiseSVN 术语及定义

🌊2. TortoiseSVN 安装与汉化

🌊3. SVN 基本操作-TortoiseSVN

🌍3.1 浏览器打开-两种方式

🌍3.2 check out(检出)

🌍3.3 update(更新)

🌍3.4 add(新增)

🌍3.5 commit(提交)

🌌冲突解决办法【冲突文件图标:黄色冒号】:

🌍3.6 revert(还原)

🌍3.7 showlog(显示日志)

🌍3.8 Add to lgnore List(增加到忽略列表)

🌍3.9 clean up(清理)

🌍3.10 加锁与解锁


🌞前言

TortoiseSVN 是一个客户端,允许开发人员直接从 Windows 的文件浏览器中操作,提供“点击右键并按下(point-and-click)”的使用环境。 


🌊1. SVN 的简介

🌍1.1 SVN是什么

  • SVN 的全称是 Subversion【版本控制系统】
    是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
  • SVN 采用客户端/服务器【即C/S体系】,数据不丢失,历史可追溯。
    SVN 是输入C/S服务类软件,有客户端和服务端,客户端用于操作,服务端用于数据存放,服务端会管理着随时间改变的所有数据,以递交版本记录每次操作内容。
  • SVN 的客户端软件有基于WEB的 webSVNTortoiseSVN【即小乌龟】

svn采取分支管理系统:分为

  • trunk-主干(基线)
  • branchs-分支(增量和补丁)
  • tags-标签

公司版本分成:基线版本、增量版本和补丁版本,以及非正式版本的beta版(即测试版本)


🌍1.2 SVN 工作原理

A 写了内容 a,B 对内容 a 进行了修改,C 通过 SVN 能够知道 A 和 B 各自干了什么事。

svn 流程如下:


🌍1.3 TortoiseSVN 术语及定义

TortoiseSVN 所有功能都集成在系统右键中,通过系统右键菜单便可实现 TortoiseSVN 的日常操作。

【术语及定义】

  • repository(源代码库)—源码统一存放的地方
  • Check out—签出:指将库中整个模块首次导入到本地
  • Commit—提交:将本地修改过的文件提交到库中
  • Update—更新:从库下载其他人的修改过的文件从而更新本地的拷贝
  • 基线是软件文档或源码(或其他产物)的一个稳定版本,它是进一步开发的基础。是项目存储库中每个工作版本的在特定时期的一个“快照”

🌊2. TortoiseSVN 安装与汉化

注意:云内使用和安装,云内自带 TortoiseSVN,汉化一下即可。

windows 64位TortoiseSVN客户端下载包:

链接:https://pan.baidu.com/s/1DHd8Xc1cyZPPRrOmISuuMw?pwd=bjdh
提取码:bjdh

  1. 安装 TortoiseSVN:双击TortoiseSVN-1.8.10.26129-x64-svn-1.8.11.1420009570.msi-》后续安装到指定位置即可
  2. 安装 中文语言包:双击LanguagePack_1.8.10.26129-x64-zh_CN.msi-》finish
    1) 在桌面任意位置,点击鼠标右键->TortoiseSVN->Settings…
    2) 选择 General->Language 选择中文(简体),点击“确定”,便可完成中文化


🌊3. SVN 基本操作-TortoiseSVN

🌍3.1 浏览器打开-两种方式

方式一:未安装客户端

可以直接在网页中输入 svn 地址打开【申请后会发公司邮件(含 svn 链接)】


方式二:已按照客户端 【比如TortoiseSVN 即小乌龟】

鼠标右键桌面或者工作副本,选择 TortoiseSVN 中的版本库浏览器打开【其实等价于浏览器打开】

输入svn 地址-》域账号登录。


🌍3.2 check out(检出)

用于检出配置库中的文件到本地,生成工作副本。

会有隐藏文件.svn【不用改,关于svn的功能内容】

拉取成功显示如下【绿勾图标:表示未更改】

SVN检出和导出区别:

  • SVN检出 配置库文件到本地,会生成工作副本,与svn 有关联。
  • 导出 仅把代码拉到本地

🌍3.3 update(更新)

svn 更新

  • 作用:用于更新工作副本到对应版本【比如代码可能更新了】
  • 方法∶在 拉取的 svn目录 右键-》svn 更新

更新至版本-》显示日志【可以选择更新到某一个版本】

什么时候需要更新至版本?

比如代码写错了、递交错了、分支递交错了【代码回退还原就更新至之前的版本】


🌍3.4 add(新增)

  • 作用:用于新增文件或者目录增加到svn版本控制中
  • 方法∶在 拉取的 svn目录 右键-》add(新增)

此时没有提交到 svn 配置库,在本地将该文件加入到 svn 版本控制中【红冒图标:说明该文件已经被修改】


🌍3.5 commit(提交)

作用:递交本地副本的代码到svn服务器
方法:选择工作副本-》对应文件-》右键递交

说明:

  • 可能会冲突场景:只有读权限、本地不是对最新的代码进行修改【根据递交信息查看即可】
  • 根据SVN递交时要填写的模板,并且递交时检查是否按照模板填写,未符合要求的会被禁止递交。

🌌冲突解决办法【冲突文件图标:黄色冒号】:

  • 冲突文件-》右击 编辑冲突
  • 自己改的不好就还原呗。。【一定要先备份本地代码,不然全没了】


🌍3.6 revert(还原)

  • 作用:撤销本地所有未递交的修改
  • 方法:选择工作副本-》对应文件-》右键还原【一定要先备份本地代码,不然全没了】


🌍3.7 showlog(显示日志)

  • 作用:显示历史操作纪律【文件由谁修改,为什么改、改的内容】
  • 方法∶选择工作副本-》对应文件-》右键显示日志

显示改变-》可以查看修改内容


🌍3.8 Add to lgnore List(增加到忽略列表)

  • 作用:新增文件或目录不被svn控制【比如中间文件避免提交】
  • 方法∶选择文件或目录右键

不小心忽略了就再点击一次就取消忽略。


🌍3.9 clean up(清理)

  • 作用:清除锁定状态,也可以清理不收svn控制的文件
  • 方法∶选择需要清理的目录右键

什么时候会用到?
提交时中断,再此提交会显示文件被锁定,就需要清理【如果不行就重启】


🌍3.10 加锁与解锁

  • 作用:防止文件被他人修改
  • 方法∶选择需要加锁的文件右键

什么时候用加锁:对于重要文件在本地编译时加锁


相关文章:

【SVN-TortoiseSVN】SVN 的简介与TortoiseSVN 安装使用教程

目录 🌞前言 🌊1. SVN 的简介 🌍1.1 SVN是什么 🌍1.2 SVN 工作原理 🌍1.3 TortoiseSVN 术语及定义 🌊2. TortoiseSVN 安装与汉化 🌊3. SVN 基本操作-TortoiseSVN 🌍3.1 浏览…...

5.13学习日志

Pytorch 神经网络基础 1.模型构造 1》层和块 块可以描述单个层,由多个层组成的组件或者模型本身 块由类表示,类的任何子类都必须定义一个将其输入转换为输出的前向传播函数。为了计算梯度,块必须具有反向传播函数 自定义块: …...

8种常见的CMD命令

1.怎么打开CMD窗口 步骤1:winr 步骤2:在弹出的窗口输入cmd,然后点击确认,就会出现一个cmd的窗口 2.CMD的8种常见命令 2.1盘符名称冒号 说明:切换盘的路径 打开CMD窗口这里默认的是C盘的Users的27823路径底下&#xf…...

版本控制工具之Git的基础使用教程

Git Git是一个分布式版本控制系统,由Linux之父Linus Torvalds 开发。它既可以用来管理和追踪计算机文件的变化,也是开发者协作编写代码的工具。 本文将介绍 Git 的基础原理、用法、操作等内容。 一、基础概念 1.1 版本控制系统 版本控制系统&#x…...

五子棋对战(网页版)

目录 一、项目背景 用户模块 匹配模块 对战模块 二、核心技术 三、相关知识 WebSocket 原理 报文格式 代码 服务器代码 客户端代码 四、项目创建 4.1、实现用户模块 编写数据库代码 数据库设计 配置MyBatis 创建实体类 创建UserMapper 创建UserMapper接口 实现UserMapper.xml 前…...

在 Ubuntu系统中,可以使用以下几种方法查看网络速率

1 使用终端命令:可以使用ifconfig命令查看网络接口的信息,包括网络接口名称、IP地址、子网掩码等。也可以使用nload命令查看网络流量和传输速率。 2 使用网络监控工具:例如nethogs,可以更加直观地查看网络吞吐量。 3 使用网络测…...

这是摆脱困境的最好方法

20多年前,我开始涉足创业,经历过的那种停滞感我都记不清了。这是这条职业道路上最常见的挣扎之一,而且很难摆脱。 卡住的城市是一个地方,任何有创造力的,自由职业者和好奇的人经常去。这是一个很难逃离的地方。 被困…...

OceanBase 中的ROWID与Oracle的差异与如何迁移

1. ROWID 1.1 OB和Oracle中rowid的区别 正如大家所知道的,OceanBase兼容Oracle的rowid特性,但在其生成规则上却存在不同,具体表现如下: OceanBase ● 定义:OceanBase(简称 OB)的rowid是通过…...

秋招后端开发面试题 - JVM运行时数据区

目录 运行时数据区前言面试题JVM 内存区域 / 运行时数据区?说一下 JDK1.6、1.7、1.8 内存区域的变化?为什么使用元空间替代永久代作为方法区的实现?Java 堆的内存分区了解吗?运行时常量池?字符串常量池了解吗&#xff…...

【YOLOv8改进[Backbone]】使用SCINet改进YOLOv8在黑暗环境的目标检测效果

目录 一 SCINet 1 本文方法 ① 权重共享的照明学习 ② 自校准模块 ③ 无监督训练损失 二 使用SCINet助力YOLOv8在黑暗环境的目标检测效果 1 整体修改 2 配置文件 3 训练 其他 一 SCINet 官方论文地址:https://arxiv.org/pdf/2204.10137 官方代码地址&…...

ASE docker related research

ASE 2022 Understanding and Predicting Docker Build Duration: An Empirical Study of Containerized Workflow of OSS Projects 理解和预测 Docker 构建持续时间:OSS 项目容器化工作流程的实证研究 Docker 构建是容器化工作流程的关键组成部分,它…...

maven .lastUpdated文件作用

现象 有时候我在用maven管理项目时会发现有些依赖报错,这时你可以看一下本地仓库中是否有.lastUpdated文件,也许与它有关。 原因 有这个文件就表示依赖下载过程中发生了错误导致依赖没成功下载,可能是网络原因,也有可能是远程…...

gtest的编译与使用

文章目录 gtest的编译与使用概述笔记CMake参数官方文档测试程序测试效果END gtest的编译与使用 概述 gTest是 googletest的缩写,如果直接找gTest项目,是找不到的。 库地址 https://github.com/google/googletest.git 迁出到本地后,切到最新…...

【 npm详解:从入门到精通】

文章目录 npm详解:从入门到精通1. [npm](https://www.npmjs.com/)的安装2. npm的基础用法2.1 初始化项目2.2 安装依赖2.3 卸载依赖2.4 更新依赖 3. npm的高级用法3.1 运行脚本3.2 使用npm scope3.3 使用npm link 4. npm资源5. 使用npm进行依赖树分析和可视化6. npm进…...

【Web后端】实现文件上传

表单必须使用post提交 ,enctype 必须是multipart/form-data在Servlet上填加注解 MultipartConfiglocation :默认情况下将存储文件的目录,默认值为“”。maxFileSize :允许上传文件的最大大小,其值以字节为单位。 默认值为-1L表示无…...

react 逻辑 AND 运算符 ()

在 React 组件中&#xff0c;当你想在条件为 true 时渲染一些 JSX 时&#xff0c;它经常会出现&#xff0c;或者什么都不渲染。使用 &#xff0c;只有在以下情况下才能有条件地呈现复选标记&#xff1a;&&isPackedtrue return (<li className"item">{…...

Redis详解(二)

事务 什么是事务&#xff1f; 事务是一个单独的隔离操作&#xff1a;事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中&#xff0c;不会被其他客户端发送来的命令请求所打断。 事务是一个原子操作&#xff1a;事务中的命令要么全部被执行&#xff0c;要么全部都…...

嵌入式:基于STM32的智能家居照明控制系统

在智能家居系统中&#xff0c;自动照明控制不仅提高了居住舒适度&#xff0c;还有助于节能减排。本教程旨在引导读者通过使用STM32微控制器来开发一个智能照明控制系统。该系统能够根据环境光线自动调整室内照明的亮度&#xff0c;并支持通过简单的用户界面手动控制光线。 一、…...

三种基本排序-冒泡,选择,二分

闲话不多说&#xff0c;直接上代码&#xff0c;简明易懂&#xff0c;条理清晰&#xff0c;交互性强&#xff0c;尽善尽美 码住&#xff0c;建议copy下来&#xff1a; 先上二分法吧&#xff0c;稍复杂点的&#xff0c;代码多一些&#xff0c;用了函数调用 二分排序&#xff1…...

windows查找重复的物理地址

单独查询所有物理&#xff08;mac&#xff09;地址&#xff08;cmd执行&#xff09;&#xff1a;arp -a 查找同一局域网下重复的mac&#xff0c;打开power shell执行以下命令&#xff1a; Get-NetNeighbor | Where-Object { $_.State -eq "Reachable" } | Select-O…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

idea大量爆红问题解决

问题描述 在学习和工作中&#xff0c;idea是程序员不可缺少的一个工具&#xff0c;但是突然在有些时候就会出现大量爆红的问题&#xff0c;发现无法跳转&#xff0c;无论是关机重启或者是替换root都无法解决 就是如上所展示的问题&#xff0c;但是程序依然可以启动。 问题解决…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要&#xff1a;设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP&#xff08;Work-in-Progress&#xff09;弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中&#xff0c;设立专门的紧急任务通道尤为重要&#xff0c;这能…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

Map相关知识

数据结构 二叉树 二叉树&#xff0c;顾名思义&#xff0c;每个节点最多有两个“叉”&#xff0c;也就是两个子节点&#xff0c;分别是左子 节点和右子节点。不过&#xff0c;二叉树并不要求每个节点都有两个子节点&#xff0c;有的节点只 有左子节点&#xff0c;有的节点只有…...