熟悉SVN基本操作-(SVN相关介绍使用以及冲突解决)

news2024/11/23 19:49:17

一、SVN相关介绍

1、SVN是什么?
  1. 代码版本管理工具
  2. 它能记住你每次的修改
  3. 查看所有的修改记录
  4. 恢复到任何历史版本
  5. 恢复已经删除的文件
2、SVN跟Git比,有什么优势
  1. 使用简单,上手快
  2. 目录级权限控制,企业安全必备
  3. 子目录checkout,减少不必要的文件检出
3、主要应用:
  1. 开发人员用来做代码的版本管理
  2. 用来存储一些重要的文件,比如合同
  3. 公司内部文件共享,并且能按目录划分权限
4、SVN仓库
  1. 推荐: svnbucket.com,SVN桶。现在最好用的SVN服务;

     

二、如何使用SVN

1、Checkout检出代码
  1. 在SVNBucket的项目详情-源码页面-复制SVN地址
  2. 在你需要保存代码的地方右键选择SVN Chekout...
  3. 填写SVN地址,填写保存目录,输入SVNBucket网站登录用户名密码。
  4. 点击确定就能同步代码到本地了。
2、Update更新代码

右键 SVN Update 更新代码,这样就能把其他人提交的代码同步到自己电脑上了

3、Commit提交代码

提交代码也很简单,右键SVN Commit...,填入提交描述,就可以把本地提交的代码提交到服务器了。

在提交代码前我们应该update下代码,这是个好习惯,可以避免覆盖别人的代码和代码冲突。

还要进行提交描述,便于查看修改了什么。

4、撤销本地修改

有时候我们本地修改了一些文件,但是突然又不需要了,想丢弃本地的修改回去SVN上最新的版本怎么操作呢?

右键选中需要撤销的文件,TortoiseSVN->Revert 就可以丢弃本地修改了。

5、撤销已经提交的代码

已经提交到SVN仓库的代码发现改错了,还能后悔撤回吗?

右键TortoiseSVN ==> show log 查看提交记录

选择我们需要回去的版本,右键选择Revert to this version,这样就回去了指定的版本

最后你还需要commit下撤销后的代码到SVN仓库。

6、恢复到指定版本

可以点击想要复原的版本进行复原,然后再提交。

7忽略文件

有时候某些目录或者文件我们不想提交到 SVN 服务器,这时我们可以忽略这些文件。选中文件,选择ignore list即可。

三、如何解决冲突

1、什么情况容易发生冲突?
  1. 多个人修改了同个文件的同一行
  2. 无法进行合并的二进制文件
2、怎么避免冲突?
  1. 经常update同步下他人的代码
  2. 二进制文件不要多个人同时操作
3、冲突了怎么办?

解决步骤:

1>update同步一下,发现冲突。产生冲突后,会出现好几个文件:

2>处理方法:

选中红色冲突的文档,右击有两个选择,要么“使用他们的文件块解决冲突文件”,要么“使用我的解决有冲突的文件”。

另外一种方法是编辑冲突,有一个远程文件,有一个我自己的本地文件,还有一个已合并的文件。

结合三个文件,进行正确修改,然后点击标“记为已解决”即可。

若是二进制文件,其解决方法同上。

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

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

相关文章

vivado实现分析与收敛技巧2-创建智能设计运行

智能设计运行 (IDR) 是基于标准实现运行创建的。在“ Design Runs ” ( 设计运行 ) 窗口中 , 右键单击实现运行 , 然后选择“Close Timing using Intelligent Design Runs ” ( 使用智能设计运行收敛时序 &#xff09…

深度学习手势检测与识别算法 - opencv python 计算机竞赛

文章目录 0 前言1 实现效果2 技术原理2.1 手部检测2.1.1 基于肤色空间的手势检测方法2.1.2 基于运动的手势检测方法2.1.3 基于边缘的手势检测方法2.1.4 基于模板的手势检测方法2.1.5 基于机器学习的手势检测方法 3 手部识别3.1 SSD网络3.2 数据集3.3 最终改进的网络结构 4 最后…

C++调用python: VS2017 + Anaconda + pypi第三方库

步骤一:在Anaconda中创建虚拟环境 这一点对大家来说应该很简单,简单介绍一下,不做过多解释。值得注意的是,要用conda命令创建环境,用pip install配置环境。 conda create -n c_python_env python3.9 # 用conda创建pyt…

Java 的第二十章:多线程

创建线程 继承Thread 类 Thread 类时 java.lang 包中的一个类,从类中实例化的对象代表线程,程序员启动一个新线程需要建立 Thread 实例。 Thread 对象需要一个任务来执行,任务是指线程在启动时执行的工作,start() 方法启动线程&am…

Docker 使用心得

创建一个docker 镜像,相关运行代码,放在docker镜像文件同级, pm2 不能与 docker一起使用() # node 服务docker FROM node:10.16.3LABEL author"sj"RUN mkdir -p /var/nodeCOPY ./node /var/nodeWORKDIR /va…

Vue实现图片预览(Viewer.js)

摘要: vue项目开发中遇到一个图片预览的需求,可以切换下一张,就是花里胡哨的,所以找viewer.js的插件 npm install v-viewer -S在项目main.js中加入: Viewer.setDefaults用于更改默认配置,比如我不想要显示…

基于AT89C51单片机的倒数计时器设计

1.设计任务 利用AT89C51单片机为核心控制元件,设计一个简易的数字电压表,设计的系统实用性强、操作简单,实现了智能化、数字化。 本设计采用单片机为主控芯片,结合周边电路组成LED彩灯的闪烁控制系统器,用来控制红色…

Paraformer 语音识别原理

Paraformer(Parallel Transformer)非自回归端到端语音系统需要解决两个问题: 准确预测输出序列长度,送入预测语音信号判断包含多少文字。 如何从encoder 的输出中提取隐层表征,作为decoder的输入。 采用一个预测器(Predictor&…

【Node.js】笔记整理 5 - Express框架

写在最前:跟着视频学习只是为了在新手期快速入门。想要学习全面、进阶的知识,需要格外注重实战和官方技术文档,文档建议作为手册使用 系列文章 【Node.js】笔记整理 1 - 基础知识【Node.js】笔记整理 2 - 常用模块【Node.js】笔记整理 3 - n…

IDEA maven无法下载源代码处理

1、使用idea内置maven 在idea中新增一个mvn运行项,截图如下: 输入命令: dependency:resolve -Dclassifiersources 2、如果外部maven,不使用idea内部maven 在工程目录下命令行执行命令: mvn dependency:resolve -Dclassifiersources

HX3002入耳检测光感驱动调试-感0x08 寄存器溢出,不变化错误问题解决方法

是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,+群赠送语音信号处理降噪算法,蓝牙耳机音频,DSP音频项目核心开发资料, 读取光感0x08 寄存器溢出,不变化错误问题?原因 原因:没有读取到0x08数据,没有读0x…

2的幂运算

2的幂 描述 : 给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false 。 如果存在一个整数 x 使得 n 2x ,则认为 n 是 2 的幂次方。 题目 : LeetCode 231.2的幂 : 231. 2 的幂 分…

vue3实现element table缓存滚动条

背景 对于后台管理系统,数据的展示形式大多都是通过表格,常常会出现的一种场景,从表格跳到二级页面,再返回上一页时,需要缓存当前的页码和滚动条的位置,以为使用keep-alive就能实现这两种诉求,…

centos服务器安装docker和Rabbitmq

centos服务器 一 centos安装docker1 安装docker所需要的依赖包2配置yum源3查看仓库中所有的docker版本4安装docker5 设置docker为开机自启6验证docker是否安装成功 二 使用docker安装RabbitMQ拉取RabbitMQ镜像创建并运行容器 一 centos安装docker 1 安装docker所需要的依赖包 …

RocketMQ-快速实战

MQ简介 MQ:MessageQueue,消息队列。是在互联网中使用非常广泛的一系列服务中间件。 Message:消息。消息是在不同进程之间传递的数据。这些进程可以部署在同一台机器上,也可以分布在不同机器上。(数据形式&#xff1a…

NASM安装和结合nodepad++进行编译的过程

mov ax,0x30 mov bx,0xc0 add ax,bx times 502 db 0 db 0x55 db 0xAA nasm安装地址: https://www.nasm.us/ 下载exe安装 在命令行提示符输入nasm编译命令 nasm exam.asm -f bin -o exam.bin 此时输入回车将会执行编译过程。 1,启动NotePad,在菜单上选…

【驱动】串口驱动分析(三)-serial driver

简介 前两节我们介绍串口驱动的框架和tty core部分。这节我们介绍和硬件紧密相关的串口驱动部分。 UART驱动部分依赖于硬件平台,而TTY驱动和具体的平台无关。虽然UART部分依赖于平台,但是不管是哪个硬件平台,驱动的思路都是一致的&#xff…

vue3中的provide与inject跨层级组件(祖孙)间通信

provide和inject提供依赖注入,功能类似 vue2.x 的provide/inject 实现跨层级组件(祖孙)间通信 子或孙子组件接收到的数据可以用于读取显示,也可以进行修改,同步修改父(祖)组件的数据。 注意:无论子组件…

微服务--08--Seata XA模式 AT模式

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 分布式事务Seata 1.XA模式1.1.两阶段提交1.2.Seata的XA模型1.3.优缺点 AT模式2.1.Seata的AT模型2.2.流程梳理2.3.AT与XA的区别 分布式事务 > 事务–01—CAP理论…