SVN的使用技巧
SVN(Subversion)是近年来崛起的版本管理工具,因为是免费的,所以用的人还是不少的。故做一些总结。
如果是新手,基本对SVN一点都不了解的话,建议去学习一下这个系统的教程,讲的也很详细TortoiseSVN 使用教程 | 菜鸟教程 (runoob.com)
1:库内部直接修改-注意事项
1.1,进入库之前的一些小技巧
我一般都是这样,直接进库的;如下图

我们有时如果忘记了地址或者中途进了其他库;可以下下图界面,打开下拉选项

大家可以在下拉列表中找到之前使用的URL(url大家就暂时理解为地址,就可以了,比较不是搞以太网通讯的)
1.2 回到正题
我查了一些资料,都这么写,先要将需要修改文档所在的文件夹checkout到本地,本地修改后,在commit到库中去。其实除了这种方法外,还有一种直接在库中修改的办法。
准确的来说是修改库中已存在的文件
**1)鼠标移动到需要修改的文件,鼠标右单击出现以下界面

直接打开编辑,即可
最重要的一步,当我们编辑完毕时,需要先点击保存,然后叉掉编辑软件。出现commit界面

单击ok,即可完成在线修改。
重重重点:经过实践发现,这种办法有一个硬性要求,即一次只能对一个文件进行在线修改。
如果你对两个不同的文件同时edit的话,按照保存,叉掉之前的页面。这样的操作,系统不会自动弹出commit界面的。这一点需要非常注意!!!!
2:在线改名称
步骤一:

步骤2:直接双击文件名,即可修改成我们需要的文件名,然后点击OK即可

3:如何查找历史版本
这个也比较关键,因为有时我们修改了文档,结果发现不行,还得回到之前的版本 ,这其实在工程中还是非常常见的一种操作。
此时我们可以如何操作?个人推荐一种非常好用的办法
步骤1:单击需要放回之前版本的文件,选择showlog

本例中;修改之前,文件名称是“新建文件夹.txt”里面没有字符是空的

直接右击需要放回的历史版本,出现以下界面,直接选择Open或Open with即可,再将打开的存在本地,然后我一般是删除现有版本, 重新commit历史版本。

这时,就有同学出来问了1两个问题:
1:那我也不知道,我需要回归的到底是那一版文档(可能是因为文档更迭的版本太多了)
答:问的好,所以这就对我们提出了两点要求,**1)对文档需要做好命名工作。**2)每次在线修改后的log相当于我们修改的一个小总结,一个小comment 。最后我们也是需要注意尽量控制修改次数
2:又有同学会问,那如果有时候,手滑误删除了一个文档,该怎么找回,
4:如何查找已经删除或误删除文档
我们先将文件删除,然后点击空白区域,点击showlog

双击打开,就可以找回删除的文档,我一般本地另存,然后在commit到库中去。

此外还需注意一点,有时我们需要查找很久之前的文档,先要在此处设置好查找的区间

5:在线模式如何及时更新别人的文档
通常一个SVN库,都是由很多人,一起编辑。如何才能更新别人的对库的修改。一般有两个办法
1:先关闭SVN,重新进入,就能看到别人的修改
2:最实用的,选中需要更新的文档,或进入需要更新的文档内部,点击Refresh即可

6:同一文件夹内,不能存在同名称的文件

如上图中,已经存在一个“新建文件夹文档.txt”,再将桌面的同名文件放到库中,就会直接报错
相关文章:
SVN的使用技巧
SVN(Subversion)是近年来崛起的版本管理工具,因为是免费的,所以用的人还是不少的。故做一些总结。 如果是新手,基本对SVN一点都不了解的话,建议去学习一下这个系统的教程,讲的也很详细Tortoise…...
使用 RabbitMQ 实现秒杀订单系统的异步消息处理
使用 RabbitMQ 实现秒杀订单系统的异步消息处理 在秒杀系统中,如何确保高并发环境下的订单处理稳定高效是个很大的挑战。为了解决这个问题,我们通常会引入消息队列,通过异步处理来削峰填谷。这篇文章将详细讲解如何使用 RabbitMQ 来设计一个…...
oracle19.3单机升级到Oracle19.22
1.补丁包、opatch准备 -rw-r--r-- 1 oracle oinstall 1817908992 9月 10 14:25 p35943157_190000_Linux-x86-64.zip -rw-r--r-- 1 oracle oinstall 133535622 9月 10 14:22 p6880880_190000_Linux-x86-64.zip2.解压补丁包和opatch包 先将原有opatch备份 [oraclecyptdg ~]$…...
半导体的发展--创世新产品介绍
文章目录 半导体的发展 半导体的发展 现代社会对于芯片的需求是越来越多了,90 年代我们能在收音机,电视机,DVD,上面看到芯片的身影,进入 2000 年,电脑,手机逐渐进入中国家庭,中国高…...
Ubuntu WSL使用技巧
0 Preface/Foreword 1 默认为root用户 当下载完成Ubuntu之后,首次登录,当完成初始化后,提示输入新的用户名时候,直接点击右上角的X按钮,再重新登陆,系统会默认使用root权限登录。...
4 个步骤带你快速上手 Einstein Copilot for Tableau
如果你的企业仍未部署或希望迁移至 Tableau Cloud,可考虑订阅 Tableau 高级套件。 自 Einstein Copilot for Tableau 发布以来,相信部分用户已经尝试过在 Tableau Cloud 中借助 AI 对话助理,快速解决数据分析中的问题,获得更准确的…...
C++ | Leetcode C++题解之第386题字典序排数
题目: 题解: class Solution { public:vector<int> lexicalOrder(int n) {vector<int> ret(n);int number 1;for (int i 0; i < n; i) {ret[i] number;if (number * 10 < n) {number * 10;} else {while (number % 10 9 || numbe…...
vsftpd配置用户和密码让其他客户端连接
一、第一个主机:vsftpd下载及配置 前置准备: #卸载防火墙 yum -y remove firewalld #为了不让防火墙有影响,iptables配置也清空 iptables -F vim /etc/selinux/conf SELINUXdisabled #主要是把它改为disabled或者permissive SELINUXTYPEtargeted #重启linux让seli…...
Oracle使用序列后提示违反唯一约束---解决办法
1、问题原因分析 出现这个问题的原因是插入数据的时候,由于之前没有使用序列插入,而是直接插入了一个比当前序列nextval还大的值,即直接将id写死了。后面再使用序列插入的时候,如果序列小于该值的话,是可以正常插入的…...
乐观锁悲观锁
乐观锁 乐观锁的核心思想是“尽量不去锁定资源,而是尽量让线程并发地工作”,并在最后阶段检查冲突,只有在检测到冲突时才会采取纠正措施。乐观锁通常通过以下方式实现: 版本号控制:每次对共享资源进行修改时…...
Unity面试:什么是UnityEvent?
UnityEvent是Unity引擎中一种特殊的事件系统,属于Unity的事件和委托机制。它允许开发者在运行时定义和管理事件的响应,从而实现松耦合的事件处理。 以下是UnityEvent的一些主要特点和用途: 松耦合的设计:UnityEvent允许对象之间…...
食品安全管理员考试真题题库及答案
食品安全管理员考试真题题库及答案 95.对食品生产经营企业来说,实施ISO 22000是()。 A.强制性的 B.无效的 C.自愿的 D.必须的 答案:C 96.CDC的意思是()。 A.卫生监督所 B.疾病控制预防中心 C.卫生…...
【C++】—— vector 的模拟实现
【C】—— vector 的模拟实现 0 前言1 vector 的成员变量1.1 stl 库中的 vector 成员变量1.2 模拟实现 vector 成员变量 2 迭代器3 size、capacity、empty4 opreator[ ]5 reserve5.1 初版 reserve5.2 _finish 的处理5.3 深拷贝5.4 终版 6 push_back 与 pop_back7 打印函数7.1 初…...
MySQL 查询过慢的优化方法
1. 优化查询语句 问题:使用 SELECT * 会导致查询获取不必要的数据。 SELECT * FROM users WHERE age > 30;优化建议: 指定需要的列,这样可以减少数据传输的负担,提升查询速度。 SELECT name, email FROM users WHERE age &g…...
YoloV8修改分类(Classify)的前处理(记录)
修改原因 yolo自带的分类前处理对于长方形的数据不够友好,存在特征丢失等问题修改后虽然解决了这个问题但是局部特征也会丢失因为会下采样程度多于自带的,总之具体哪种好不同数据应该表现不同我的数据中大量长宽比很大的数据所以尝试修改自带的前处理&a…...
半监督学习能否帮助训练更好的模型?
数据科学家面临的最常见挑战之一是缺乏足够的标记数据来训练一个可靠且准确的模型。标记数据对于监督学习任务,如分类或回归至关重要。然而,在许多领域,获取标记数据既昂贵又耗时,有时甚至是不切实际的。另一方面,未标…...
VBA 获取字段标题代码轻松搞定
hi,大家好! 最近又有一段时间没和大家唠嗑了,最近也没有时间给大家开直播,天天忙,但不知道在忙啥!那今天我们来讲点啥好玩的呢? 今天是老师节,那就先祝各位老师节日快乐࿰…...
C++代码片段
for(int i1; i<shuliang; i) { int f100; cout<<a[i].name<<":"<<\n; cout<<"该舰艇现在距离基地"<<km<<"km,需要"<<km…...
Golang | Leetcode Golang题解之第388题文件的最长绝对路径
题目: 题解: func lengthLongestPath(input string) (ans int) {n : len(input)level : make([]int, n1)for i : 0; i < n; {// 检测当前文件的深度depth : 1for ; i < n && input[i] \t; i {depth}// 统计当前文件名的长度length, isFi…...
docker打包前端项目
🎉 前言 之前有出过一期打包后端项目和数据库的教程,现在填个坑,出一期打包前端项目的教程,废话不多说,我们直接进入正题。 🎉 编写Dockerfile文件 老规矩,先描述项目结构,结构图…...
7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...
基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)
引言 在嵌入式系统中,用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例,介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单,执行相应操作,并提供平滑的滚动动画效果。 本文设计了一个…...
