svn工具使用

svn

介绍

  1. 解决之道:

SCM:软件配置管理

所谓的软件配置管理实际就是对软件源代码进行控制与管理

CVS:元老级产品

VSS:入门级产品

ClearCase:IBM 公司提供技术支持

SVN:主流产品

  1. 什么是SVN?
  • SVN 全称SubVersion
  • SVN 是CVS 的接班人

特点:操作简单 入门容易

​ 支持跨平台操作(Window,Linux,MacOS)

​ 支持版本回退

  1. 获取SVN软件

属于C/S架构软件(客户端 与 服务器)

服务端软件:visualsvn

https://www.visualsvn.com/server/download/

客户端软件:tortoisesvn

https://tortoisesvn.net/downloads.html

SVN 工作流程:

20211120083802

服务端软件安装

https://www.visualsvn.com/server/download/

20211120084332

20211120084928

安装完成:

20211120085329

SVN 服务端环境配置

创建一个项目:

  • 首先在SVN服务器创建一个公有目录 WebApp 作为项目目录
  • 在WebApp 目录下创建Shop 文件夹 作为 Shop(版本仓库)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dD6Jst5u-1690943278073)(http://qiniu.xiaotao.cloud/QQ%E6%88%AA%E5%9B%BE20211120085940.png)]

  • 创建版本仓库 DOS 环境

    svnadmin create 文件夹路径
    

没有任何提示 则代表创建成功

20211120091448

创建成功

20211120091557

进行服务端监管

SVN -> svn://localhost 或(ip地址) 访问到相关数据仓库(Shop仓库)

基本语法:

svnserve -d(后台运行) -r(监管目录) 版本仓库路径 

20211120092725

通过以上指令我们的svn://localhost 或(ip地址)就可以直接指向版本仓库

权限控制

默认情况下,SVN 服务器是不允许匿名用户进行上传文件 所有我们必须修改项目相关配置文件

20211120095514

20211120095401

20211120095428

客户端软件安装

https://tortoisesvn.net/downloads.html

安装成功:

20211120100644

汉化包

20211120101153

下载安装

使用客户端软件连接SVN服务

Checkout:检出

项目目录右键 -> TortoiseSVN -> 版本库浏览器(Repo-browser)

20211120102018

右键 CheckOut:

20211120110443

20211120102445

OK

20211120102541

查看隐藏目录:

20211120102701

SVN 使用

提交到远程 commit

  • svn 三大指令:

    • Checkout 检出: 连接到SVN 服务器 更新服务器端数据到本地

      注意:Checkout 只在第一次链接是操作使用 后面更新使用 Update

    • commit 提交:提交本地数据到服务器

20211120104812

20211120105231

提交成功

20211120110649

克隆到本地

张三:

新建文件:

同上 Checkout -> Repo-browser

20211120111017

20211120111317

20211120111339

检出成功:

20211120111400

update

20211120112002

提交成功 步骤同上:

20211120112039

项目经理需要看到今天zhang 的工作:

20211120112125

右键 SVN update

20211120112301

SVN 图标集

设置 可以进行图标修改

20211120114909

图标不显示

20211120114350

解决:

Win+R —> regedit —> 找到:HKEY_LOCAL_MACHINE——SOFTWARE——Microsoft——Windows——CurrentVersion——Explorer——ShellIconOverlayIdentifiers

20211120114557

在任务管理器终止 explorer.exe 进程

重新运行即可

图标含义

20211120115038

**绿色对勾:**表示一个新检出的工作复本使用绿色的对勾做重载。表示Subversion状态正常.

**红色叹号:**表示在你开始编辑一个文件后,状态就变成了已修改,而图标重载变成了红色感叹号。通过这种方式,你可以很容易地看出哪些文件从你上次更新工作复本后被修改过,需要被提交。

**黄色叹号:**表示如果在提交的过程中出现了冲突图标变成黄色感叹号。

**灰色对勾:**表示如果你给一个文件设置了svn:needs-lock属性,Subversion会让此文件只读,直到你获得文件锁。只读文件具有这个重载图标来表示你必须在编辑之前先得到一个锁。

**黄色小锁:**表示如果你拥有了一个文件的锁,并且Subversion状态是正常,这个重载图标就提醒你如果不使用该文件的话应该释放锁,允许别人提交对该文件的修改。

**红色叉号:**表示这个图标表示当前文件夹下的某些文件或文件夹已经被计划从版本控制中删除,或是该文件夹下某个受控的文件丢失了。

**蓝色加号:**表示加号告诉你有一个文件或是目录已经被计划加入版本控制。

忽略文件

有些文件不希望上传至SVN 服务器 应该将这些文件添加至忽略文件

在要忽略文件上 右键

image-20211120115743112

20211120115922

忽略后提交就不会显示

版本回退

20211120120606

20211120120821

20211120121046

显示日志:

20211120121145

选择对应版本确定即可

版本冲突

在项目开发中 如果两个人同时修改某个文件就会出现版本冲突

20211120121735

20211120122348

li

20211120122526

20211120122615

xiao

20211120122734

当xiao 提交是就会出现冲突 无法提交

20211120122831

OK

20211120142911

20211120142947

20211120143013

通过SVN 解决

  • 跟新服务器端数据到本地

20211120143135

index.html : 整合后的 index.html 文件

index.html.mine : 后一个人提交的文件

index.html.r1 : 代表两人检出项目之前当前状态

index.html.r2 : 前一个人修改后的文件

  • 删除除 index.html 以为的文件
  • 修改整合后 index.html 的冲突文件

修改前

20211120144404

修改后

20211120144542

  • 重新提交数据到SVN 服务器

20211120144700

成功提交

20211120144735

配置多仓库

在实际项目开发中 我们可能会同时开发多个项目 我们怎么样同时监管多个项目呢?

通过 svnserve 进行项目监管 只能监管某一个文件夹 而不能同时监管多个仓库

解决方式

因为在实际开发中 我们的所有项目 都是放在 WebApp 目录下 所以我们直接监管 WebApp 目录 即可

20211120151026

20211120151104

访问:

Shop

svn://localhost/Shop

Wechat

svn://localhost/Wechat

权限控制

如果要使用权限控制:必须要开启权限功能 在每个仓库里面都有三个文件

ahthz 文件:授权文件

告诉哪些用户具有哪些权限

password 文件: 认证文件

标识当前SVN 系统中某个仓库具有哪些用户及相应的密码

默认情况下 以上两个文件都是禁用的 需要使用 需要先开启

  • 禁用匿名用户可读可写权限

20211120152213

  • 开启授权 认证 文件

20211120152326

  • 配置认证文件

20211120152632

  • 配置授权文件

20211120153039

20211120153443

20211122081631

20211122082143

配置自启动

sc create 服务名称 binpath=空格"svnserve.exe --service -r D:/svn/WebApp" start=空格autosc create SVNService binpath= "C:\Program Files\VisualSVN Server\bin\svnserve.exe --service -r C:\Program Files\VisualSVN Server\WebApp" start= auto

20211122183701

模拟真实开发环境

20211122185155

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例 学习前言源码下载地址网络构建一、什么是Stable Diffusion(SD)二、Stable Diffusion的组成三、img2img生成流程1、输入图片编…

Kubernetes系列-Ingress

1 Ingress 概述 Kubernetes 对外暴露服务(Service)主要有两种方式:NodePort,LoadBalance,此外 externalIps 也可以使各类 service 对外提供服务,但是当集群服务很多的时候,NodePort方式最大的缺…

SpringBoot第28讲:SpringBoot集成MySQL - MyBatis-Plus方式

SpringBoot第28讲:SpringBoot集成MySQL - MyBatis-Plus方式 本文是SpringBoot第28讲,MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。MyB…

Spring框架——IOC配置文件方式

Spring框架的概述和入门 目录 Spring框架的概述和入门 什么是Spring框架 Spring框架的特点 Spring框架的IOC核心功能快速入门 Spring框架中的工厂(了解) Spring 创建Bean对象的三种方式 Spring框架的Bean管理的配置文件方式 Spring框架中标签的配…

《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(16)-Fiddler如何充当第三者再识AutoResponder标签-上

1.简介 Fiddler充当第三者,主要是通过AutoResponder标签在客户端和服务端之间,Fiddler抓包,然后改包,最后发送。AutoResponder这个功能可以算的上是Fiddler最实用的功能,可以让我们修改服务器端返回的数据&#xff0c…

python面向对象

面向对象概述 python是一门面向对象语言,面向对象的三大特性,封装、继承、多态,python支持多继承,这里与java语言等还是有区别的 创建类关键字 class ,类中包含属性和方法,通过类创建对象 python的类和对象…

组合模式——树形结构的处理

1、简介 1.1、概述 树形结构在软件中随处可见,例如操作系统中的目录结构、应用软件中的菜单、办公系统中的公司组织结构等。如何运用面向对象的方式来处理这种树形结构是组合模式需要解决的问题。组合模式通过一种巧妙的设计方案使得用户可以一致性地处理整个树形…

小目标检测(1)——大恒(DaHeng)相机操作与控制编程

文章目录 引言正文相关开发库的介绍编程准备配置引用头文件GalaxyIncludes.h配置lib文件 具体编程过程初始化和反初始化枚举设备开关设备 属性控制属性控制器种类 图像采集控制和图像处理采单帧回调采集图像处理流对象属性控制 获取设备事件获取掉线事件通知 样例程序分析补充&…

转机来了,国内全新芯片技术取得突破,关键驱动引擎开始提速

芯片技术转机来了 我们都知道,芯片技术是现代信息技术的基石,它驱动着计算机、智能手机、物联网设备等各类电子设备的运行。 科技的不断进步,芯片技术也在不断演进。 从传统的集成电路到现代的微处理器和系统芯片,其计算能力和能…

dubbo配置---重试与版本号

1、重试次数 失败自动切换,当出现失败,重试其它服务器,但重试会带来更长延迟。可通过 retries“2”{默认} 来设置重试次数(不含第一次)。 (1)在调用端,Reference注解添加属性 retries,设置重试…

Mysql5.8 Windows安装

1、下载安装包 MySQL :: Download MySQL Community Server 下载后解压到某个文件夹 2、配置环境变量 3.创建my.ini文件 [mysqld] # 设置3306端口 port3306 # 设置mysql的安装目录 basedirE:\\software\\mysql\\mysql-8.0.11-winx64 # 切记此处一定要用双斜杠\\,…

【CSS】圆形放大的hover效果

效果 index.html <!DOCTYPE html> <html><head><title> Document </title><link type"text/css" rel"styleSheet" href"index.css" /></head><body><div class"avatar"></…

Pytorch基础

文章目录 一、Pytorch简介二、安装2.1 安装GPU环境2.2 安装Pytorch2.3 测试 三、Tensor3.1 Tensor创建3.1.1 torch.tensor() && torch.tensor([])3.1.2 torch.randn && torch.randperm3.1.3 torch.range(begin,end,step)3.1.4 指定numpy 3.2 Tensor运算3.2.1 A…

113、单例Bean是单例模式吗?

单例Bean是单例模式吗? 通常来说,单例模式是指在一个JVM中,一个类只能构造出来一个对象,有很多方法来实现单例模式,比如懒汉模式,但是我们通常讲的单例模式有一个前提条件就是规定在一个JVM中,那如果要在两个JVM中保证单例呢?那可能就要用分布式锁这些技术,这里的重点…

iOS开发-实现热门话题标签tag显示控件

iOS开发-实现热门话题标签tag显示控件 话题标签tag显示非常常见&#xff0c;如选择你的兴趣&#xff0c;选择关注的群&#xff0c;超话&#xff0c;话题等等。 一、效果图 二、实现代码 由于显示的是在列表中&#xff0c;这里整体控件是放在UITableViewCell中的。 2.1 标签…

使用 AntV X6 + vue 实现单线流程图

使用 AntV X6 vue 实现单线流程图 X6 是 AntV 旗下的图编辑引擎&#xff0c;提供了一系列开箱即用的交互组件和简单易用的节点定制能力&#xff0c;方便我们快速搭建 DAG 图、ER 图、流程图等应用。 官方文档 安装 yarn add antv/x61.34.6Tips&#xff1a; 目前 X6 有 1.x…

二叉树迭代遍历

PS:以下代码均为C实现 1.二叉树前序遍历 力扣 给你二叉树的根节点 root &#xff0c;返回它节点值的 前序 遍历。 class Solution { public:vector<int> preorderTraversal(TreeNode* root) {stack<TreeNode*> st;vector<int> str;TreeNode* curroot;whil…

python面试题【题目+答案】

最近遇到了一份python的面试题&#xff0c;题目比较简单&#xff0c;时间控制在一个小时之内。以下是面试的题目跟答案&#xff0c;答案不代表最优解&#xff0c;只是当时所想到的一些思路&#xff0c;接下来将分享给大家。 目录 1. 给出下面打印结果 2.字典如何删除键、如何…

PySpark介绍与安装

Spark是什么 定义&#xff1a;Apache Spark是用于大规模数据&#xff08;large-scala data&#xff09;处理的统一&#xff08;unified&#xff09;分析引擎。 简单来说&#xff0c;Spark是一款分布式的计算框架&#xff0c;用于调度成百上千的服务器集群&#xff0c;计算TB、…

无涯教程-Lua - for语句函数

for 循环是一种重复控制结构&#xff0c;可让您有效地编写需要执行特定次数的循环。 for loop - 语法 Lua编程语言中 for 循环的语法如下- for init,max/min value, increment dostatement(s) end 这是 for 循环中的控制流程- 首先执行 init 步骤&#xff0c;并且仅执行一…