SVN分支使用教程

编程教程 > Softwares (10807) 2025-01-27 10:21:18

一.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

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


评论
User Image
提示:请评论与当前内容相关的回复,广告、推广或无关内容将被删除。

相关文章
一.SVN分支使用需求以及解决办法需求:本地代码需要开发新功能,但是线上版本出现bug需要及时解决
问题描述:Edge 开发工具栏打不开由于不清楚原因导致Edge浏览器按下F12会导致浏览器页面非常小,而且看不见开发工具界面(无论是浏览器内部还是外部弹窗都没有
接上一篇Zerotier网络管理_Zerotier免费稳定内网穿透工具 网络管理讲解,本文将会讲解网络管理里面的成员设备添加删除等管理
据上一篇zerotier账号注册_zerotier免费稳定内网穿透工具 初步介绍了Zerotier和Zerotier的网络图,这篇主要针对Zerotier的网络管理基础操作进行讲解
navicat premium 一直一来是开发者常用的数据库链接工具之一,也因为器功能强大,界面易用。但是奈何卖价太高,对于开发者有些不友好,导致大多数都开始了
情况说明在mac air2018 使用系统助理安装Windows 10 时候选择了一个win10的最新2023镜像ios提示的错误信息借图参考错误界面解决办法更
stash命令作用stash 命令能够将还未 commit 的代码暂存起来,让你的工作目录变得干净,同时讲解idea中stash界面使用操作。应用场景某一天你正
老电脑完美升级/安装Windows11系统方法,不需要电脑支持TPM模块,就算微软工具检查CPU不支持也能安装
环境说明Linux服务器一台安装docker服务nexus3镜像拉取 可选择版本拉取docker pull sonatype/nexus3:3.32.1 也可以拉取最新版本:docker pul...
powerdesigner16.5X64破解文件,powerdesigner16 64位下载powerdesigner16 64bit下载,powerdesigner16 64位补丁PowerD...
Zerotier 是什么​我们的使命是直接连接世界各地的设备,并实现分散计算的新时代
编程中,总有遇到空白字符的坑,notepad++ 是个不错的文本编辑工具,下面介绍如何在notepad++编辑器显示不可见字符,包括 换行符,空格,tab等
设置好idea的SQL数据库类型,以便于idea工具提供准确的语法提示。该方法也就是解决idea SQL语法提示不准确问题的解决方法。 打开设置菜单File-&gtl;
前置条件Gogs版本 0.13.0 app.ini配置文件在[repository] 节点添加下面配置; Default branch name when cr
安装 dockerDocker 包位于“社区”存储库中,因此如果 apk 添加失败且具有不可满足的约束,则需要编辑/etc/apk/repositories文件以添加(或取消注释)一行,如:ht...