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

TortoiseSVN的使用

基本概念

版本库

SVN保持数据的地方,所有的文件都保存在这个库中,Tortoise访问的就是远程服务器上的Subversion版本库。

工作拷贝

就是工作副本,可将版本库的文件拷贝到本地中,可以任意修改, 不会影响版本库。在你明确地做了特定操作(如commit/conflict)之前,Suvbversion不会把你的修改和其他人的合并,也不会把你的修改展示给别人,你甚至可以拥有同一个项目的多个工作拷贝。通常你的工作拷贝下都有一个以.svn命名的文件夹。

修订版本

当工作拷贝进行提交,版本库接受提交,版本库的内容就会变成工作拷贝的内容。 每当版本库接受了一个提交,文件系统进入了一个新的状态,叫做一次修订(revision),每一个修订版本被赋予了一个独一无二的自然数,一个比一个大。若初始修订号是0,说明版本库没有接受任何提交,是一个空目录。
注:Subversion的修订号是针对整个目录树的,而不是单个文件。每一个修订号代表了一次提交后版本库整个目录树的特定状态,另一种理解是修订号N代表版本库已经经过了N次提交。

导入(import)

将未被版本管理的代码引入SVN系统中,由此开始对它进行版本管理。
###导出(export)
指从版本库中导出文件至本地,但这些文件不受版本控制。

检出(checkout)

从版本库中检出文件至本地形成本地工作拷贝,这些文件受版本控制,是版本库的目录在本地的映射。

提交(checkin/commit)

将工作拷贝的变更内容提交至版本库。

冲突(conflict)

在协同开发的环境下,当两个开发人员对同一个文件的同一行代码进行修改,并且依次提交到仓库的时候,就发生了冲突。这种冲突需要手工消除,因此需要相关人员的沟通,并将形成的解除冲突之后的新版本提交到仓库中。

基本操作

图标设置

对于需要映射到网络磁盘上的工作拷贝显示图标。

查看图标含义

对增加、删除和修改的文件经图(2)设置后均会显示在工作拷贝的目录和文件上,不明白时可查看图中的设置。
在这里插入图片描述

SVN的访问方式

1、直接通过IE访问,即直接用URL地址搜索,这种形式只能查看配置库,下载有
权限
的文件,不能进行修改;
2、通过TortoiseSVN的版本库浏览器访问配置库,可执行
导出/导入/检出/提交等操作。
进入任一文件夹下,右键选择“TortoiseSVN -> 版本库浏览器” -> 输入URL地址(若初次进入会提示输入账号密码)
在跳出版本库浏览器索引栏输入配置库地址。详见下图
在这里插入图片描述

用户认证

认证

在访问配置库时,需要身份认证,将出现如下图登录界面。
在这里插入图片描述
若点击保存认证,客户端就会接收到一个认证请求,它会首先查找用户磁盘中的认证凭证缓存,如果没有发现,或者是缓存的凭证认证失败,客户端会提示用户输入这些认证信息。若保持之后,下次再次访问同一个URL时,不需要身份认证。
若需要清除认证信息,可在TortoiseSVN菜单下的“Settings(设置)”中进行如下设置。点击“Save Data”后清除按钮即可。(当没有保存认证时,改按钮显示灰色,不可用。)
在这里插入图片描述

工作周期

创建你的工作拷贝:SVN Checkout
更新你的工作拷贝:SVN Update
修改你的工作拷贝:add/delete/rename/copy/move
检验你的修改:check for modifications/ Diff
取消你的修改:revert
合并别人的修改到工作拷贝: (conflict)
提交你的修改:SVN Commit

checkout

功能:从版本库取出一个工作拷贝至本地。
操作:在弹出的对话框中输入版本库URL,本地工作拷贝路径,下载的版本号(默认为版本库当前最新版本),URL的深度可以自己控制。
注意事项:
(1)检出的版本库URL深度只能到目录,即只能检出文件夹,单个文件不能做检出;
(2)本地必须有一空的文件夹用于存放从版本库检出的工作拷贝;

update

功能:将版本库的最新版本合并到工作副本中。
操作:鼠标右击选中目录或文件,在Windows下使用右键菜单中SVN Update即可。
在这里插入图片描述

add

功能:将工作拷贝中新增加的文件,目录或符号链锁定添加到版本库,这些添加的对象会在commit时才真正上传并添加到版本库。只影响工作拷贝,在commit前不改变版本库内容。
操作:在工作拷贝中,使用右键菜单中的添加即可,此时的添加只是预添加。
在这里插入图片描述
注意:
1.添加的对象必须已经存在于当前工作拷贝路径内.若对象在工作拷贝路径外,请先用系统复制命令复制对象至工作拷贝对应路径内。在执行了svn的添加命令后,文件的符号标志由:
在这里插入图片描述
2.如果在提交前改变了主意,可以使用svn revert取消此预定(取消全部)。如果是单个目 录或单个文 件可以选择 Undo Add。
3.对于预增加的文件或目录,在未提交前,若需撤消增加,点击资源管理器中的“Revert”菜单,即可返回修改前的状态。

Delete

功能:删除工作拷贝中的目录或文件
变化:只影响工作拷贝,在commit前不改变版本库内容。
操作:
1、如果被删除的文件还未入版本库,则可以直接使用操作系统的删除操作删除该文件。
2、如果被删除的文件已入版本库,则删除的方法如下:

  1. 选择被删除文件,右键svn菜单执行”delete”操作,然后选择被删除文件的父目录,右键svn菜单执行”SVN Commit”.
  2. 使用操作系统的删除操作删除该文件,然后选择被删除文件的父目录,右键svn菜单执行”SVN Commit”,在变更列表中选择被删除的文件。

说明:
若是文件则工作拷贝中即刻删除,
若是目录,则目录中的文件被删除,文件夹保留,在目录上直观地显示出 来图标(X),
以上都是预删除过程,若需要将这些删除操作更新到版本库,则需要使用提交(Commit)操作。查看删除的文件,可点击资源管理器中的“check for modifications”菜单看变更状态。

Copy/Move

功能:将工作拷贝中需复制/剪切的目录或文件弄到目的文件夹中;
变化:只影响工作拷贝,在commit前不改变版本库内容;
操作:需要复制或移动的目录或文件拖放到目的文件夹中,再鼠标右击选取相应的操作,如下.
在这里插入图片描述

Rename

功能:对工作拷贝中的目录或文件进行重命名;
变化:只影响工作拷贝,在commit前不改变版本库内容;
操作: 右击选中需重命名的文件或目录,选择“rename”菜单,输入新的文件名后,工作拷贝中将出现重命名后的文件或目录,重命名前的文件或目录被删除。所有的操作在commit后方可更新到版本库。
注意:

Rename的过程其实分为两步:(1)add(2)Delete
说明:对工作拷贝中一个目录或文件进行rename完毕,下次提交时,在Commit对话框中,如下,两个状态的文档都要选上
在这里插入图片描述

Conflict

在执行commit操作时,如果发生冲突,就会有以下的界面出现,提 示“resource out of date,by updating”
在这里插入图片描述
解决步骤:
1、点“ok”按钮退出。
2、先执行update
3、然后commit
4、如果修改与update得到的代码不冲突,则自动合并。
注意:
在执行update操作时,如果发生冲突,就会有如下的界面出现,提示”One or more files are in a conflicted state“红色警告。说明出现冲突,说明多人对同一地方进行了修改,此时需要手动进行冲突的解决。
在这里插入图片描述
解决步骤:
1、选择冲突文件-〉”Edit conficts”
在这里插入图片描述

出现merge界面,分为”Theirs”、”Mine”和”Merged”3部分,表示”别人修改 的内容”、
”我修改的内容”和”合并后的结果”3部分。目标是将”别人修改的内容”和”我修改的内容”有取舍地合并起来,形成”合并后的结果”。
合并一般分为4种情况: 1、保留”我的修改”,舍弃”别人的修改”。鼠标右键点击Mine框的相应行,点 击”Use this text
block”。 2、舍弃”我的修改”,保留”别人的修改”。鼠标右键点击Theirs框的相应行,点 击”Use this text
block”。 3、同时保留”我的修改”和”别人的修改”,并将”我的修改” 放在前面。鼠标右键 点击Mine框的相应行,点击”Use
text block from mine before theirs”。
4、同时保留”我的修改”和”别人的修改”,并将”别人的修改”放在前面。鼠标右键 点击Mine框的相应行,点击”Use text block
from theirs before mine”。

2、合并完成,Ctrl+S存盘,退出;
3、选择冲突文件-〉”Resolved”,标记冲突已解决,系统自动删除因冲突而新建的文件;
4、继续进行commit操作;

Revert

功能:取消工作拷贝中的所有修改,回到修改前的状态,即回到Base 版本状态;
变化:只影响工作拷贝,不影响版本库;
操作:右击选种需撤消修改的目录或文件,执行”Revert”。
在这里插入图片描述
说明:
1、如果是工作拷贝的顶级目录,则撤销工作拷贝中的所有更改;
2、如果是工作拷贝中的子目录,则撤销子目录中的所有更改;
3、如果是单个文件,则撤销对单个文件的修改;

Commit

功能:提交修改,将修改从工作拷贝提交到版本库。影响工作拷贝和版本库,在提交后,版本库内容将与本地工作拷贝相同。
操作:选取需提交的文件或目录,点击“svn commit”菜单,选取完毕,若未保存认证的信息,则需要重新输入用户名与密码,系统认证是否有写的权限。
在这里插入图片描述
点击”OK”,进入以下界面,表示提交成功。
在这里插入图片描述
注意:提交的对象必须为相对版本库已做了修改的文件或目录,如预添加,预删除,或已修改的等,对于没有修改的目录或文件将不会进行提交。

查看更新

可查看工作拷贝上的变更,工作拷贝中缺的文件及与版本库中比较缺少的或更改的情况。
操作:右击文件或目录,选取资源管理器中的“check for modifications”,不点击”check repository”,只是与工作拷贝中的BASE版本比较,显示出变更的文件。否则将同时与版本库比较检查库中是否有了新的变动。
在这里插入图片描述

查看差异

1、文件差异比较

1.比较某个文件工作拷贝中的版本与checkout时的版本(即Base)之间的差 异,选取该文 件,点击右键,打开“比较差异”显示比较结果。

2.若需比较两个历史版本,打开版本分支图。选一个版本,按CTRL键再选另外一版本, 点击“比较版本差异”出现如图所示界面的比较结果。

2、比较目录的差异或整个版本的差异

在所在的目录下,点击右键,打开版本分支图。选一个版本,按CTRL键再。选另外一版本,点击“比较版本差异”出现如图所示界面的比较结果。

查看日志

查看某些版本的日志信息或所有版本的日志,默认情况是所有版本的,可点击”ShowRange”显示某些版本的变更日志信息。
在这里插入图片描述

标签

选取需打标签的目录,选取“分支/标记”,则将出现如图所示界面
在这里插入图片描述

相关文章:

TortoiseSVN的使用

基本概念 版本库 SVN保持数据的地方,所有的文件都保存在这个库中,Tortoise访问的就是远程服务器上的Subversion版本库。 工作拷贝 就是工作副本,可将版本库的文件拷贝到本地中,可以任意修改, 不会影响版本库。在你…...

操作系统(day09) -- 连续分配管理方式

连续分配管理方式 单元连续分配 动态分区分配 1.系统要用什么样的数据结构记录内存的使用情况? 两种常用的数据结构 空闲分区表 每个空闲分区对应一个表项。表项中包含分区号、分区大小、分区起始地址等信息空闲分区链 每个分区的起始部分和末尾部分分别设置前向…...

APISpace 带你一起走进西湖美景

俗话说:“上有天堂,下有苏杭”。 “欲把西湖比西子,浓妆艳抹总相宜” 今天我就带大家走进杭州的西湖美景。自古以来,文人歌者面对西湖美景留下千古绝句,还以西湖为背景书写了一段段动人的爱情传说。 天生自带浪漫色…...

傻白探索Chiplet,Design Space Exploration for Chiplet-Assembly-Based Processors(十三)

阅读了Design Space Exploration for Chiplet-Assembly-Based Processors这篇论文,是关于chiplet设计空间探索的,个人感觉核心贡献有两个:1.提出使用整数线性规划算法进行Chiplet的选择;2.基于RE和NRE提出了一个cost模型&#xff…...

系统分析师真题2020试卷相关概念一

对象系统测试的基本概念: 面向对象系统的单元测试包括方法层次的测试、类层次的测试和类树层次的测试。方法层次的测试类似于传统软件测试中对单个函数的测试; 测试技术: 方法层次的测试,单个函数的测试;常用的技术:等价类划分测试、组合功能测试、递归函数的测试和多态…...

20230215_数据库过程_渠道业务计算过程

—20221209 渠道产能 —自有人员工号表 shzc.xc_qdcn_pgtx_opertype —select * from shzc.xc_qdcn_pgtx_opertype for update ; —渠道基础目录 shzc.xc_qdcn_pgtx_qdtype —select * from shzc.xc_qdcn_pgtx_qdtype for update ; SQL_STRING:‘update shzc.xc_qdcn_pgtx_q…...

【C++】Expression的学习笔记

关于不同类别表达式的举例,请参考博文《C 中的值类别》 1. 左值和右值的简单理解 左值对应了具有内存地址的对象,而右值仅仅是临时使用的值对象。(引用自博文《C 中的值类别》)左值有名称(变量或常量名称&#xff09…...

[数据库迁移]-MySQL常见问题

[数据库迁移]-MySQL常见问题 森格 | 2023年2月 介绍:记录在MySQL数据库迁移过程中遇到的问题,以及解决方案。 文章目录[数据库迁移]-MySQL常见问题一、背景二、常见问题2.1 ERROR 20032.2 ERROR 12732.3 ERROR 10712.4 视图权限2.5 ERROR 1062三、总结一…...

C语言编译过程

C语言编译过程1、C语言编译过程2、单c文件编译实践3、多c文件编译实践4、define4.1、不带参宏4.2、带参宏4.3、带参宏和带参函数的区别5、选择性编译ifdef、ifndef、if5.1、#ifdef5.2、#ifndef5.3、#if6、静态库和动态链接库6.1、静态库实践6.1.1、将mylib.c制作成静态库6.1.2、…...

前端学习 ---常用标签

常用标签 1,文本标签 文本标签是双标签&#xff0c;自带加粗效果&#xff0c;有自己对应的文本大小&#xff0c;并且独占一行&#xff0c;有默认间距 一级标签&#xff1a;< h1 > < /h1 > 二级标签&#xff1a;< h2 > < /h2> 三级标签&#xff1a;&l…...

2023年PMP考试难不难?

整个考试的考察方向转向还是比较大的&#xff0c;基本上以“价值传递”和“以人为本”这两个出发点来考察项目经理所需要的能力。 1}新版提纲题目数量的变化 总题量从200道减少到180道&#xff0c;所以答题时间上相对变的宽裕一些。考试时间230分钟&#xff0c;中间有十分钟休…...

Netty 入门

文章目录一、概述1.1 Netty 是什么&#xff1f;1.2 Netty 的地位1.3 Netty 的优势二、Hello World2.1 目标2.2 服务器端2.3 客户端2.4 流程梳理三、组件3.1 EventLoop3.2 演示 NioEventLoop 处理 io 事件3.3 演示 NioEventLoop 处理普通任务3.4 演示 NioEventLoop 处理定时任务…...

收藏|一文掌握数据分析在企业的实际流程

一、数据分析概念 1.1 数据分析 是指用适当的统计分析方法对收集来的大量数据进行分析&#xff0c;将他们加以汇总和理解并消化&#xff0c;以求最大化地开发数据的功能&#xff0c;发挥数据的作用。 1.2 数据分析包括 描述性数据分析&#xff08;初级数据分析&#xff09;…...

100ask_imx6ull 输出PWM

查看PWM对应扩展板的引脚 100ask_imx6ul通过扩展板插槽来验证pwm波&#xff0c;所以这里通过扩展板的原理图及芯片手册可知&#xff0c;gpio4_io20&#xff0c;gpio4_io19分别对应着PWM8和PWM7。 设置设备树 打开官方NXP的工具i.MX pins v6工具&#xff0c;PWM7/PWM8的配置如…...

yolov5编译安卓APP:解决图像上全是检测框

yolov5编译安卓APP&#xff1a;解决图像上全是检测框前言一、第一个YOLOv5 APP1.参考链接2.详细说明3.APP检测时图像上全是框的解决方法二、第二个YOLOv5 APP1.参考链接2.详细说明3.APP检测时图像上全是框的解决方法三、其他1.APK打包2.修改APP图标与名字前言 YOLOv5编译安卓A…...

为什么我们需要地图?

想一想&#xff0c;武侠小说里面。一张藏宝图&#xff0c;引来江湖腥风血雨&#xff0c;要么是武功秘籍&#xff0c;要么是绝世宝剑&#xff0c;要么是富可敌国的财富&#xff0c;只要有了藏宝图&#xff0c;便可曲径通幽&#xff0c;到达彼岸。 由此可见&#xff0c;地图的重…...

攻防世界1.新手练习区

4.攻防世界1.新手练习区 1.view_source 访问url&#xff1a; http://111.200.241.244:48855/ 鼠标点击右键不起作用&#xff0c;F12审查元素 得到flag为cyberpeace{0f3a3e4ab8c8664f3cf40d4240ec7b53} 2.robots 访问url&#xff1a; http://111.200.241.244:34362/ rob…...

Python进阶篇(二)-- Django 深入模型

上一节提到了Django是基于MVC架构的Web框架&#xff0c;MVC架构追求的是“模型”和“视图”的解耦合。所谓“模型”说得更直白一些就是数据&#xff08;的表示&#xff09;&#xff0c;所以通常也被称作“数据模型”。在实际的项目中&#xff0c;数据模型通常通过数据库实现持久…...

ABAP SALV实现弹出ALV选择

问题场景 需要弹出一个ALV并获取选择的数据 实现思路 跳转屏幕弹出ALV&#xff08;通过SALV&#xff09;弹出ALV&#xff08;通过REUSE_ALV_POPUP_TO_SELECT&#xff09; 实现效果 因为这里需要的是单选&#xff0c;所以没有多选列 实现代码 MODULE sel_zfretype INPUT.…...

git check-pick,git patch 与 git stash 详解

大家好&#xff0c;我是 17。 今天和大家聊一聊 git check-pick&#xff0c;git patch 与 git stash 的用法。 git cherry-pick 为什么要用 cherry-pick? 不适合 merge 的场景就可以考虑 cherry-pick。 试想下面这些场景 只想同步分支的部分提交。两个分支是两上完全独立…...

HTML 语义化

目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案&#xff1a; 语义化标签&#xff1a; <header>&#xff1a;页头<nav>&#xff1a;导航<main>&#xff1a;主要内容<article>&#x…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...