2020年7月6日

为什么需要版本控制?

  • 需要清晰地保存某些文件的不同修订版本
  • 控制文件的发屐过程,找出导致 BUG 的原因
  • 轻松将项目或文件恢复到指定版本
  • 极大方便团队之间协同开发,防止出现混乱
  • 在工作中,时刻谨记“数据无价,再怎么备份也不足为过

SVN简介

SVN全称SubVersion,他属于C/S结构软件,SVN是一个自由与开源的版本控制系统。操作简单,入门容易、支持跨平台操作。它采用了分支管理系统。

服务端软件:VisuaISVN

客户端软件:Tortoisesvn

特点:

  • 操作简单,入门容易
  • 支持跨平台
  • 支持版本回退

作用:

  • 协作开发
  • 远程开发
  • 版本回退

svn的使用

安装svn,汉化后需要重启。

新建一个文件夹。svn介绍,然后此文件夹中新建一个文件夹svn版本库

右键,在此创建版本库。(这个就是我们的代码库)

  1. 选中程序员A,然后检出,版本库地址选版本库,然后检出到程序员A

  2. 然后程序员A新建了一个程序员1。

  3. 然后程序员B检出版本库。这样程序员B就有了程序员A的代码。

  4. 然后程序员B提交了自己修改后的代码。

  5. 然后程序员A进行svn更新。此时,就是程序员B修改后的代码。

  6. 然后程序员C进行检出版本库,那么此时就是B修改后的代码。

  7. 程序员C新建了一个程序员3.txt文件、

  8. 右键,然后提交svn。

  9. 接下来。程序员A或者程序员B直接更新,就可以获取到程序员3.txt

  10. 新建一个程序D,然后,检出。这样我们就有的了版本库中最新的代码。

  • 添加文件:找到随便一个受svn控制的文件夹,在里面放你的文件,然后在这个受控制的文件上右键,提交即可实现。

  • 删除文件:右键选择文件,点击删除(是svn里面的删除按钮),然后必须返回上级文件夹右键提交。

  • 重命名:右键,选择svn里面的重命名,然后返回到上级目录后,进行svn提交。提交后,其他的文件就可以更新到最新的了。

  • 移动:右键找到svn的"版本库浏览器",随意拖拽文件的位置即可实现文件的移动效果。(注意:如果是在服务器的版本库浏览器设置,直接可以实现一个默认的提交,如果不是在服务器的版本浏览器设置,就必须回到上级目录点击提交才可以)

  • 获取历史版本:更新至版本,右键——更新至版本——显示日志——找到想要的版本。点击确定即可。

svn的几个操作说明:

1、Check out(检出):从服务器端取得代码

把服务器资料库里存放的某个项目代码取出来,放到本地主机中,这个动作叫做“check out”。使用具体步骤:进入要安装项目文件的目录中,点击鼠标右键,选择SVN Check out项,然后填写项目的原始路径和安装路径后点击“ok”即可。

2、Update(更新):更新项目代码

以前checkout过的一个项目代码,当服务器上有了更新的代码,或者本地代码损坏或丢失,update可以自动判断本地哪些文件较旧,或者缺少,都会自 动更新。当然,你也可以删除掉本地代码,重新check out。使用具体步骤为:在要更新的项目上点击鼠标右键,选择“SVN Update”项即可。

3、Commit(提交):将本地代码上传到服务器

当修改(增加,删除,修改等所有写操作)过本地代码后,这个动做会把新代码提交到SVN。如果本地代码做了修改,不执行commit操作,SVN服务器上是 不会有这个新版本的,也就是说其它人也得不到。对代码做过修改后,应尽快commit。使用具体步骤:在修改完待上传的项目上点击鼠标右键,选择 “SVN Commit”项即可。

版本冲突如何解决

原因:多个用户对同一个仓库进行了更改。这样就存在冲突了。

解决方案:右键,编辑冲突。然后保存,然后标记一下,解决冲突。这样就可以了。

在开发冲突的时候,我们尽量避免解决冲突。最好每次先更新,然后提交。

SVN的基本使用的更多相关文章

  1. svn 常用命令总结

    svn 命令篇 svn pget svn:ignore // 查看忽略项 svn commit -m "提交说明" // 提交修改 svn up(update) // 获取最新版本 ...

  2. svn常用命令

    1.新建版本库 [root@localhost repos]# mkdir -p project [root@localhost repos]# svnadmin create project [ro ...

  3. 对Maven、gradle、svn、spring 3.0 fragment、git的想法

    1.Maven Maven可以构建项目,采用pom方式配置主项目和其他需要引用的项目.同时可结合spring3.0的新特性web  fragment. 从现实出发,特别是对于管理不到位,程序员整体素质 ...

  4. 电脑新建svn仓库

    步骤1:安转svg: 注意事项: 安装的时候选择:Modify 安装到以下图片的步骤时: 黄色区域选择: 步骤2:新建svn仓库文件夹(本教程例子:D:\svn-5gpos),选择文件夹右键,点击下图 ...

  5. 项目持续集成环境(jenkins + SVN + maven + tomcat)

    整体流程 每次SVN上代码有变动,触发自动构建动作,并部署到服务器的tomcat上,具体流程: 1.SVN上提交代码修改 2.maven执行Goals 3.将web工程打成war包 4.关闭服务器的t ...

  6. Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)

    所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...

  7. ASP.NET Aries 2.0 发布(原来的源码SVN已关闭,开源源码已迁移到GitHub)

    主要更新: 1:增加子目录部署支持. 2:增加Taurus.MVC支持. 3:优化及Bug修复. 1:增加子目录部署支持: 其实在重写Aries框架的时候,我是去掉了目录部署功能的,主要是为了加快Ar ...

  8. [开源]QuickSwitchSVNClient,快速完成SVN Switch的工具

    在实际的开发中,我们一般使用SVN工具进行源代码的管理.在实际的产品开发中,根据项目的一些定制要求,往往需要对某一些代码的修改,但是又不想影响主要的开发,这个时候需要对当前的主分支做一些分支处理(br ...

  9. 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(二)

    前言     上一篇随笔Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)介绍maven和nexus的环境搭建,以及如何使用maven和nexus统一管理库 ...

  10. 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)

    前言     但凡一个略有规模的项目都需要一个持续集成环境的支撑,为什么需要持续集成环境,我们来看一个例子.假如一个项目,由A.B两位程序员来协作开发,A负责前端模块,B负责后端模块,前端依赖后端.A ...

随机推荐

  1. 扩展BSGS

    \(BSGS\) 求解\(a^x\equiv b\pmod p\),且\(a\)与\(p\)互质 由\(a^{φ(p)}\equiv1 \pmod p\)和\(a^0\equiv 1\pmod p\) ...

  2. MySQL(四)数据备份与还原

    数据备份与还原: 备份:将当前已有的数据或者记录保留 还原:将已经保留的数据恢复到对应的表中 为什么要做备份还原: 1.防止数据丢失:被盗.误操作 2.保护数据的记录 数据备份还原的方式很多:数据表备 ...

  3. 【Laravel】 常用的artisian命令

    全局篇 查看artisian命令 php artisan php artisan list 查看某个帮助命令 php artisan help make:model 查看laravel版本 php a ...

  4. 如何使用Excel管理项目?

    1.什么是复杂问题? 复杂问题需要很多道工序,涉及到与多个人进行沟通,人的注意力没法持续关注,导致很容易忘掉很多重要步骤.像这种问题就要用到项目管理工具,在重要的节点上,来检查自己是否遗漏了重要的环节 ...

  5. LIMS/QMS产品索引

    Starlims https://www.cnblogs.com/mahongbiao/p/12863304.html 客户申请门户/客户服务门户 https://www.cnblogs.com/ma ...

  6. 阿里云ecs轻量级服务器node镜像部署

    这个是自带安装pm2,nginx,node,mongodb的环境的,目录在控制台有给出, server端的配置按照开发手册去操作即可. 而静态的页面.需要修改nginx的配置文件,找到nginx的ng ...

  7. 从RNN到BERT

    一.文本特征编码 1. 标量编码 美国:1 中国:2 印度:3 … 朝鲜:197 标量编码问题:美国 + 中国 = 3 = 印度 2. One-hot编码 美国:[1,0,0,0,…,0]中国:[0, ...

  8. statsmodels 示例

    Statsmodels 示例 https://www.statsmodels.org/stable/examples/index.html

  9. Django学习路26_转换字符串大小写 upper,lower

    在 urls 中注册 url(r'getstr',views.getstr) 在 views.py 中添加函数 def getstr(request): string = 'abc' string_2 ...

  10. zabbix 邮件报警和微信报警

    # 邮件报警 一.定义邮件发件人 #密码来源 完成操作会看到 二.定义邮件收件人 三.启动动作 #先开启 2.触发操作 3.恢复操作 4.开启发送消息 1.2. 微信报警 一. 首先要注册一个企业微信 ...