SVN分支使用教程

软件使用 > 编程 (12656) 2023-03-28 11:29:14

一.SVN分支使用需求以及解决办法


需求:

本地代码需要开发新功能,但是线上版本出现bug需要及时解决。

解决办法:

svn代码主版本与线上保持一致,标记一个新的开发分支进行开发新功能,出现BUG在主版本上修改后提交至线上,并将主版本修改的内容更新到开发版本。

svn操作流程:
导出trunk版本,创建DEV分支版本;
开发导出DEV 版本开发;
修复BUG时候导出trunk版本修复BUG;
trunk版本修复BUG完毕后提交至SVN保证trunk代码与线上一致;
DEV版本将trunk修复的内容通过同一颗树的方式更新合并过来;
DEV版本新功能开发完毕后,trunk版本通过不同树合并方式将DEV版本开发的内容合并过来;
trunk版本打包上线新功能,同时也保证了trunk与线上版本一致;

思路流程图思路图

二.SVN具体的操作流程

2.1.创建一个demo演示项目,svn结构如下

svn项目版本结构图
svn项目版本结构图


如上图所示,demo项目有几个子目录,分别是主版本/分支版本/稳定(标记)版本

2.2.导出trunk版本,创建DEV分支版本

首先从svn导出主版本,如下图所示:
svn导出主版本
svn导出主版本

svn导出主版本
svn导出主版本


创建一个DEV开发分支版本,创建流程如下图所示:
创建一个DEV开发分支版本
创建一个DEV开发分支版本

选择创建分支/标记
选择创建分支/标记
选择创建分支/标记

创建dev分支
创建dev分支
创建dev分支

创建完成

2.3.导出dev版本
 
导出dev版本
导出dev版本:1
 
导出dev版本:2
导出dev版本:2


2.4.模拟线上(trunk)版本修改BUG
demo_trunk项目目录下新增一个文本,内容随意
demo_trunk项目目录下新增一个文本
demo_trunk项目目录下新增一个文本

模拟修复bug并上传至svn
修复bug并上传至svn
修复bug并上传至svn

操作完成

2.5 模拟蒋线上版本修复的内容更新至dev开发版

首先鼠标选中开发版本,选择合并,如下图所示:
鼠标选中开发版本,选择合并
鼠标选中开发版本,选择合并

选择合并的类型为:一个版本范围 
选择合并的类型为:一个版本范围 
选择合并的类型为:一个版本范围 

注意选择合并源为trunk版本路径
选择合并源为trunk版本路径
选择合并源为trunk版本路径

注意:一般情况下上方需要指定具体的版本号码

合并之前也可以点合并测试。可以预判某些冲突,下面是直接合并的结果:
执行合并
从上图可以看到我们的dev版本从trunk版本中合并过来了bugfix.txt内容。

合并过来后可以先蒋合并的内容提交至dev版本
合并过来后可以先蒋合并的内容提交至dev版本
合并过来后可以先蒋合并的内容提交至dev版本


2.6.模拟新功能开发完毕同步至主线trunk版本

首先将新开发的功能提交至dev版本库
新开发的功能提交至dev版本库
新开发的功能提交至dev版本库

切换到demo_trunk版本,进行版本合并
合并类型为:两个不同版本的树
注意这里选择合并类型为:两个不同版本的树。然后下一步:
注意合并路径
注意起始是trunk版本,终止是dev版本。下一步准备合并:
测试合并
测试合并


 
执行合并
执行合并

trunk版本将合并的分支版本内容提交至svn
trunk版本将合并的分支版本内容提交至svn

至此我们就完成了一轮的新功能开发版本控制。

相关文章
一.SVN分支使用需求以及解决办法需求:本地代码需要开发新功能,但是线上版本出现bug需要及时解决
SVN
linux安装配置svn版本管理器
Java编程中,svn提交代码报错svn: E165001: Commit blocked by pre-commit hook (exit code 1) with output:解决方法
SVN 分支/主干版本合并以下展示为主干修改内容合并到分支首先需要的是将分支版本更新到本地,然后在本地的分支版本选择合并(以下为TortoiseSVN 工具合并界面)上个关键性截图先:​这里只讲...
一 环境window系统(7/8/10/11)皆可小左图工软件tif图片二 打开小左图工软件三 选择tif图片选择图片文件然后找到tif图片文件选中四 点击开始
一 工具/环境Windows(7/8/10/11)系统小左图工软件webp图片文件二  打开小左图工软件打开小左图工软件三 选择webp图片然后找到webp图片四 点击开始处理 处理完成webp...
一 frp搭建准备frp软件(由于github访问不稳定这里存了一份在网盘frp: (访问密码: 9987)一台有公网ip的云服务器srvany.exe  instsrv.exe 用于windo...
环境准备dockerdocker-compsemysql 5.6+Gogs docker部署MySQL创建gogs数据库,创建一个空库即可。配置docker-compose.ymlversion...
问题描述部署了私服gogs发现访问总是转圈有点慢。通过F12查看发现是avatar头像服务访问超时,估计是被枪了。解决办法 停止gogs服务,找到 配置文件 gogs/conf/app.ini编...
当今的数字时代,图片已成为我们生活中不可或缺的一部分。无论是在工作中还是在日常生活中,我们都需要用到图片。但是,不同的应用程序和设备支持的图片格式不同,这就需要我们使用一个图片格式转换工具来解决...
ICO图片是一种常见的图标文件格式,通常用于Windows操作系统中的应用程序、文件夹、快捷方式等的图标。ICO文件通常包含多个不同尺寸和颜色深度的图标,以便在不同分辨率的屏幕上显示。
PowerDesigner 16.5 驱动问题描述 在菜单 database-&gtl;Connect..-&gtl;Connect profile-&gtl;Configure 下配置/新增...
通过PowerDesigner ojdbc驱动连接数据库进行逆向导出数据库表设计文档(Excel)
u 模式 如果你有一个不认识的字,例如“燚” 你可以打u再输入huohuohuohuo的拼音,参考: 就可以看到这个字读什么了。   v 数字计算模式 输入v后面...
一、如何使用navicat premium 导出查询结果到excel 执行sql,然后在工具栏找到“导出结果”按钮,如下图所示: