【图文详解】入职必备——SVN使用教程_svn使用教程

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

文章目录

前言

又是一年毕业季不少小伙伴纷纷入职我也找到了理想的工作。

正式进入公司后并不会像我们自学时自己一个人随心所欲地写代码需要我们和同事进行协同开发此时代码管理工具是必不可少的目前常用的两款工具是SVN 和 Git今天我们就来学习一下SVN的使用

该技术博客是关于B站SVN视频教程的笔记总结希望能为大家带来帮助视频链接如下

https://www.bilibili.com/video/BV1k4411m7mP?p=5&share_source=copy_web

相关文章推荐

1、SVN简介

SVN是什么

  • 代码版本管理工具
  • 它能记住你每一次的代码修改
  • 查看所有的修改记录
  • 恢复到任何历史版本
  • 恢复已经删除的文件

SVN相比于Git的优势

  • SVN使用简单上手快
  • 目录级权限控制企业安全必备
  • 子目录Checkout减少不必要的文件检出

主要应用场景

  • 开发人员用来做代码的版本管理工具
  • 用来存储一些重要的文件比如合同
  • 公司内部文件共享并且能按照目录划分权限

2、SVN仓库

仓库推荐使用SVN桶目前最好用的SVN服务网址如下

https://svnbucket.com

3、SVN客户端

客户端推荐使用TortoiseSVN安装方式如下

  1. 打开网址https://svnbucket.com注册登录账号
  2. 点击下载SVN客户端
    在这里插入图片描述
  3. 点击官网下载
    在这里插入图片描述
  4. 点击按钮就自动进行下载了
    在这里插入图片描述
  5. 下载完成后进行安装无脑下一步就安装成功了可以选择安装路径
    在这里插入图片描述

4、SVN基础操作

首先我们需要创建一个SVN项目
在这里插入图片描述


然后我们在桌面上创建文件夹workspace
进入到workspace文件夹中鼠标单击右键单击SVN Checkout…
在这里插入图片描述
创建一个需要检出的文件夹
在这里插入图片描述
接着填写刚刚注册时候的用户名和密码
在这里插入图片描述
此时svnbucket文件夹中的文件代码都可以提交到服务端
在这里插入图片描述
我们在该文件夹中添加两个txt文件鼠标右键单击SVN Commit…进行提交
在这里插入图片描述

在这里插入图片描述
提交之后就可以到SVN仓库中查看提交的内容了
在这里插入图片描述


提交操作演示完毕后也可以对提交的文件内容进行修改首先我将xzb.txt文件中的内容进行修改此时文件就会变红
在这里插入图片描述
然后在文件所在页面鼠标右键单击SVN Commit…提交之前单击SVN Update先进行更新这样可以避免冲突
在这里插入图片描述
此时我们去SVN仓库查看xzb.txt文件发现内容修改成功

5、撤销和恢复

撤销操作第一种情况首先我们将xzb.txt内容进行修改文件就变成红色的此时如果我们想撤销刚刚的修改操作可以直接在修改的文件上鼠标右键单击 TortoiseSVN——>Revert… 就可以撤销了
在这里插入图片描述


撤销操作第二种情况我们将错误的内容提交到仓库中了此时我们想要撤销需要先打开日志信息鼠标右键——>TortoiseSVN——>Show Log
在这里插入图片描述

在这里插入图片描述
此时这次撤销操作只是在本地撤销还需要提交到服务端这样才算真正撤销成功了


撤销操作第三种情况我们还可以将提交的错误代码撤销到指定的版本比如我们想从版本6撤销到版本4就可以选中版本4鼠标右键单击Revert to this revision就本地撤销了最后需要再次提交才能成功
在这里插入图片描述

6、添加忽略

有些时候我们不是所有文件都想要进行提交此时我们就可以对不想提交的文件添加忽略

我们接下来对zyt.txt文件添加忽略。首先需要选中文件鼠标右键点击TortoiseSVN——>Unversion and add to ignore list——>zyt.txt此时zyt.txt文件上多了个❌标志说明该文件被忽略了。然后我们进行提交就发现SVN仓库中没有zyt.txt文件了
在这里插入图片描述

上述添加忽略的方式同时也是删除忽略的方式如果想要将忽略属性删除那就再次执行上述操作

7、解决冲突

什么情况容易发生冲突

  • 多人修改同一文件同一行
  • 无法进行合并的二进制文件

怎么避免冲突

  • 经常update同步他人的代码
  • 二进制文件不要多个人同时操作

如何解决冲突由于该过程需要两台电脑且很难文字记录所以提供视频链接

https://www.bilibili.com/video/BV1k4411m7mP?p=5&spm_id_from=pageDriver

8、分支

什么时候需要开分支

  • 隔离线上版本和开发版本
  • 大功能开发不想影响别人自己独立开个分支进行开发

SVN经典目录结构

  • trunk主干
  • branches分支
  • tags标签

首先我们在文件夹中创建上述经典目录结构3个文件夹将代码文件放到trunk文件夹中加入我们的主干开发已经完成准备上线了我们就可以开个线上版本分支。选中trunk文件夹鼠标右键单击TortoiseSVN——>Branch/tag然后按照下图操作就创建好分支了
在这里插入图片描述
在这里插入图片描述
此时我们更新一下就会发现branches中出现了分支接着我们把onlinev1.0和trunk文件重新检出到workspace文件夹中鼠标右键查看属性就能得到这两个文件的URL
在这里插入图片描述
然后根据URL 检出SVN Checkout… 到workspace文件夹下将svnbucket文件夹删除后我们只有一个主干和一个分支
在这里插入图片描述
此时主干和分支的修改操作相互之间并没有影响

在这里我们的svnbucket-onlinev1.0是线上版本线上版本出现bug我们就对其进行修改提交这样对主干没有任何影响。

如果我们想把线上的bug修复操作合并到主干上就需要将鼠标移动到线上版本鼠标右键——>TortoiseSVN——>Show log选中刚刚修改的版本
在这里插入图片描述
将此版本合并到svnbucket-trunk这样就合并完成了


接下来我们再创建一个onlinev2.0分支文件演示一下如何切换分支选中svnbucket-trunk文件
在这里插入图片描述
在这里插入图片描述
此时另一个分支创建完成了接下来我们从1.0分支切换到2.0分支
在这里插入图片描述
在这里插入图片描述

9、代码暂存

需要使用代码暂存的场景

  • 代码修改了很多突然需要紧急修复一个bug但是代码并没有写完不能提交
  • 代码重构了很多突然需要发布新版本但是代码还跑不起来不能提交

接下来我将文件内容进行修改然后将文件暂存起来
在这里插入图片描述
在这里插入图片描述
取消暂存的方式也很简单
在这里插入图片描述
在这里插入图片描述

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6