【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的 webSVN 和 TortoiseSVN【即小乌龟】
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

- 安装 TortoiseSVN:双击TortoiseSVN-1.8.10.26129-x64-svn-1.8.11.1420009570.msi-》后续安装到指定位置即可
- 安装 中文语言包:双击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路径底下…...
版本控制工具之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 堆的内存分区了解吗?运行时常量池?字符串常量池了解吗ÿ…...
【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 组件中,当你想在条件为 true 时渲染一些 JSX 时,它经常会出现,或者什么都不渲染。使用 ,只有在以下情况下才能有条件地呈现复选标记:&&isPackedtrue return (<li className"item">{…...
Redis详解(二)
事务 什么是事务? 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 事务是一个原子操作:事务中的命令要么全部被执行,要么全部都…...
嵌入式:基于STM32的智能家居照明控制系统
在智能家居系统中,自动照明控制不仅提高了居住舒适度,还有助于节能减排。本教程旨在引导读者通过使用STM32微控制器来开发一个智能照明控制系统。该系统能够根据环境光线自动调整室内照明的亮度,并支持通过简单的用户界面手动控制光线。 一、…...
三种基本排序-冒泡,选择,二分
闲话不多说,直接上代码,简明易懂,条理清晰,交互性强,尽善尽美 码住,建议copy下来: 先上二分法吧,稍复杂点的,代码多一些,用了函数调用 二分排序࿱…...
windows查找重复的物理地址
单独查询所有物理(mac)地址(cmd执行):arp -a 查找同一局域网下重复的mac,打开power shell执行以下命令: Get-NetNeighbor | Where-Object { $_.State -eq "Reachable" } | Select-O…...
7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...
【深尚想】TPS54618CQRTERQ1汽车级同步降压转换器电源芯片全面解析
1. 元器件定义与技术特点 TPS54618CQRTERQ1 是德州仪器(TI)推出的一款 汽车级同步降压转换器(DC-DC开关稳压器),属于高性能电源管理芯片。核心特性包括: 输入电压范围:2.95V–6V,输…...
Linux操作系统共享Windows操作系统的文件
目录 一、共享文件 二、挂载 一、共享文件 点击虚拟机选项-设置 点击选项,设置文件夹共享为总是启用,点击添加,可添加需要共享的文件夹 查询是否共享成功 ls /mnt/hgfs 如果显示Download(这是我共享的文件夹)&…...
iOS 项目怎么构建稳定性保障机制?一次系统性防错经验分享(含 KeyMob 工具应用)
崩溃、内存飙升、后台任务未释放、页面卡顿、日志丢失——稳定性问题,不一定会立刻崩,但一旦积累,就是“上线后救不回来的代价”。 稳定性保障不是某个工具的功能,而是一套贯穿开发、测试、上线全流程的“观测分析防范”机制。 …...
Redis专题-实战篇一-基于Session和Redis实现登录业务
GitHub项目地址:https://github.com/whltaoin/redisLearningProject_hm-dianping 基于Session实现登录业务功能提交版本码:e34399f 基于Redis实现登录业务提交版本码:60bf740 一、导入黑马点评后端项目 项目架构图 1. 前期阶段2. 后续阶段导…...
World-writable config file /etc/mysql/mysql.conf.d/my.cnf is ignored
https://stackoverflow.com/questions/53741107/mysql-in-docker-on-ubuntu-warning-world-writable-config-file-is-ignored 修改权限 -> 重启mysql # 检查字符集配置 SHOW VARIABLES WHERE Variable_name IN (character_set_server, character_set_database ); --------…...
时间序列预测的机器学习方法:从基础到实战
时间序列预测是机器学习中一个重要且实用的领域,广泛应用于金融、气象、销售预测、资源规划等多个行业。本文将全面介绍时间序列预测的基本概念、常用方法,并通过Python代码示例展示如何构建和评估时间序列预测模型。 1. 时间序列预测概述 时间序列是按…...


