【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 加锁与解锁

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

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


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/610239.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在k8s中部署Prometheus并实现对k8s集群的监控

🐇明明跟你说过:个人主页 🏅个人专栏:《Prometheus:监控的神》 🏅 🔖行路有良友,便是天堂🔖 目录 一、引言 1、k8s简介 2、 Prometheus概述 二、准备k8s环境 1、…

C语言:__attribute__((packed))

一、简介 在使用结构体的时候,经常要根据结构体的长度来进行相关判断。但是按照C语言的规则,会对不同类型的数据类型进行自动对齐。有时候就会造成一些问题,如果不需要使用自动对齐的功能,就需要使用到本章的关键字。 二、自动对…

fabric搭建生产网络

fabric搭建生产网络 一、生成组织结构与身份证书 解包 hyperledger-fabric-linux-amd64-2.5.0.tar.gz 1.1、crypto-config.yaml配置文件 ./bin/cryptogen showtemplate > crypto-config.yaml 将crypto-config.yaml内容修改为: # -------------------------…

Django 管理员登录安全 OTP双因素认证

目前安全双因素 最基本的,django管理员 默认直接登录的。 本项目环境:Django 2.0.13django-otp 0.9.3 1 安装pip3 install django-otp0.9.3 2 配置文件 vim api_statistics/settings.py INSTALLED_APPS里增加django_otp,django_otp.plugins.otp_totp,MIDDLEWARE…

推荐几款国内的AI写作工具,好用免费还能在线生成AI文案

AI写作简介: 在专业领域中,人工智能技术的进步正以前所未有的速度推动着写作行业的革新。当前,我们见证了生成式人工智能(AI)在文本产生领域的广泛应用,其对提升创作效率和拓展创意边界的贡献是显著的。以…

用 Next.js 和 Supabase 进行“全栈”开发的入门

文章目录 (零)前言(一)创建Next.js应用程序(1.1)新建工程目录(1.2)安装依赖环境(1.3)创建Tailwind配置 (二)创建Supabase项目&#xf…

Leetcode—232. 用栈实现队列【简单】

2024每日刷题(131) Leetcode—232. 用栈实现队列 实现代码 class MyQueue { public:MyQueue() {}void push(int x) {st.push(x);}int pop() {if(show.empty()) {if(empty()) {return -1;} else {int ans show.top();show.pop();return ans;}} else {i…

管道液位传感器怎么接线

管道光电液位传感器是用来检测水管缺水的一种液位传感器,有水无水输出不同电压信号,在洗地机领域有着广泛的应用,那么管道液位传感器怎么接线? 管道液位传感器通常有三根线,电源线、地线和信号线,电源线接…

window golang 升级版本

执行go tidy,发现执行不了,得升级一下版本了 进入官网,并选择合适的系统以及版本。https://go.dev/dl/ 这台电脑是windows,我本人比较喜欢下载zip自己解压。 解压,这里我选择直接覆盖原文件,需要保留原版…

2024智能电网与能源系统国际学术会议(ICSGES2024)

2024智能电网与能源系统国际学术会议(ICSGES2024) 会议简介 我们诚挚邀请您参加将在南京隆重举行的2024年智能电网与能源系统国际学术会议(ICSGES2024)。南京,一座历史与现代交织的城市,将为这场盛会提供独特的学术…

AVL树的原理及其实现

文章目录 前言了解AVL树AVL树的特点AVL树的节点调整方案右单旋为什么要右单旋呢?右单旋代码 左单旋为什么要左单旋?左单旋代码 左右双旋左右双旋之后平衡因子的情况左右双旋代码实现 右左双旋右左双旋代码: 简单测试 前言 回顾我们对于二叉搜…

HarmonyOS开发案例:【生活健康app之实现打卡功能】(2)

实现打卡功能 首页会展示当前用户已经开启的任务列表,每条任务会显示对应的任务名称以及任务目标、当前任务完成情况。用户只可对当天任务进行打卡操作,用户可以根据需要对任务列表中相应的任务进行点击打卡。如果任务列表中的每个任务都在当天完成则为…

基于 AI 的 Python 爬虫

✦ 支持 OPENAI、Gemini、Groq、本地 Ollama、Azure 等 LLM ✦ 只需传递 Prompt 和链接 注意: 调用 Ollama 模型,需要运行下方指令,拉取 embedding 模型: ollama pull nomic-embed-text 问题: 似乎不能换成兼容 Ope…

进程间通信 管道

前言 ubuntu系统的默认用户名不为root的解决方案(但是不建议):轻量应用服务器 常见问题-文档中心-腾讯云 (tencent.com) 进程间通信的基本概念 进程间通信目的:进程间也是需要协同的,比如数据传输、资源共享、通知事件…

人脸图像生成(DCGAN)

一、理论基础 1.什么是深度卷积对抗网络(Deep Convolutional Generative Adversarial Network,) 深度卷积对抗网络(Deep Convolutional Generative Adversarial Network,DCGAN)是一种生成对抗网络&#xf…

计算机通信SCI期刊推荐,JCR1区,IF=6+,审稿快,无版面费!

一、期刊名称 Computer Communications 二、期刊简介概况 期刊类型:SCI 学科领域:计算机科学 影响因子:6 中科院分区:3区 出版方式:订阅模式/开放出版 版面费:选择开放出版需支付$2300 三、期刊征稿…

STM32中的ICACHE是什么有什么用?如何使用?

什么是ICACHE? icache是一种用于缓存指令的存储器,其目的是提高CPU执行指令的效率。 在计算机系统中,icache(指令缓存)是处理器核心内部的一个关键组件,它专门用来存储最近使用过的指令。当CPU需要执行一个…

Bean的作用域

Bean的作用域 Bean的作用域是指在Spring整个框架中的某种行为模式,比如singleton单例作用域,就表示Bean在整个spring中只有一份,它是全局共享的,那么当其他人修改了这个值时,那么另一个人读取到的就是被修改的值 Bea…

每日OJ题_记忆化搜索②_力扣62. 不同路径(三种解法)

目录 力扣62. 不同路径 解析代码1_暴搜递归(超时) 解析代码2_记忆化搜索 解析代码3_动态规划 力扣62. 不同路径 62. 不同路径 难度 中等 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器…

element-ui skeleton 组件源码分享

今日简单分享 skeleton 骨架屏组件源码,主要从以下四个方面来讲解: 1、skeleton 组件的页面结构 2、skeleton 组件的属性 3、skeleton item 组件的属性 4、skeleton 组件的 slot 一、skeleton 组件的页面结构 二、skeleton 组件的属性 2.1 animate…