SVN创建分支与合并分支

2023-11-11

SVN忽略target文件夹

鼠标右键项目 -> TortoiseSVN -> Settings
在这里插入图片描述
1、*号代表所有,*.idea *target 忽略.idea文件夹和target文件夹
2、注意每个过滤的文件中间要留空格

SVN创建分支

1、trunk主干新建maven工程spring-boot-demo项目并commit提交到SVN版本库
在这里插入图片描述
项目结构:
在这里插入图片描述
2、选中需要建立分支的项目spring-boot-demo,右键-->TortoiseSVN-->Branch/tag
在这里插入图片描述
3、To path 选择分支路径
在这里插入图片描述
Copy 完成!
在这里插入图片描述
4、查看远程库分支项目代码
在这里插入图片描述
5、本地branches目录拉取分支代码
在这里插入图片描述

SVN合并分支

合并是合并到本地的working copy,不是直接合并远程版本库,合并到本地工作目录需要自己选择是否提交到版本库。所以合并前需要将项目更新或者提交代码,否则会未提交的代码可能会丢失

1、分支添加查询用户接口代码,提交代码。
在这里插入图片描述
2、将分支代码合并到主干
将分支合并到主干,需要选择主干代码右键Merge,选择对应合并类型处理。
将主干合并到分支,就需要选择对应分支右键Merge,选择对应合并类型处理。

在这里插入图片描述
3、选择合并类型
在这里插入图片描述

  • merge a range of revisions: 就是将分支修改合并到主分支(理解为主干代码)上来,分支可以选择一个或者多个版本,主分支不能选择版本。
  • merge two different trees: 主分支和分支都可以选择版本,合并的时候以选择的分支为主。合并时如果有不同,会将主分支不同的删掉。from 和 to 要选择正确,from是主分支,to是分支。

merge a range of revisions

选好我们的分支版本,即spring-boot-demo1128分支,然后选择哪些版本进行合并,可以是all revisions,全部版本,也可以指定版本。
在这里插入图片描述
指定好版本之后下一步,这里可以选择是否比较空白等选项,然后可以先Test Merge测试下合并,如果觉得没问题那就直接点击"Merge"
在这里插入图片描述
合并完成
在这里插入图片描述
查看主分支代码、idea显示有修改未提交的代码。可以选择是否进行提交到主干代码库中
在这里插入图片描述

merge two different trees

1、分支spring-boot-demo1128新增保存用户方法saveUser1,并commit提交远程库。
在这里插入图片描述
主分支spring-boot-demo新增PersonController类,方法getPerson,并commit提交远程库。
在这里插入图片描述

2、右键主分支代码TortoiseSVN-->Merge,选择merge two different trees方式将分支代码合并到主分支上来,这里记得from是主分支spring-boot-demo项目,to是分支spring-boot-demo1128项目,选择好版本以后进行合并。

From含义:合并的主分支代码
To含义: 需要被合并的分支代码
在这里插入图片描述
3、指定好版本之后下一步,这里可以选择是否比较空白等选项,然后可以先Test Merge测试下合并,如果觉得没问题那就直接点击"Merge"
在这里插入图片描述
合并完成
在这里插入图片描述

4、查看主分支代码。分支的Application类的saveUser1方法同步到了主分支的working copy中。但是主分支的PersonController类被删除了。
在这里插入图片描述
这就是merge two different trees类型的合并方式,分支代码合并上来的时候会把主干上面新增的删掉,所以对这种类型我们合并的时候应该注意,这里from里的版本不应该是主干最新的版本,而应该是当时拉取分支的时候的版本,也可以理解为是分支的第一个版本,然后to是分支的最新版本,这样才会把分支最新的代码合并到working copy里,然后在同步合并将本地working copy合并到主干中。

5、按照上面的思路在试一次。主干选择Revert掉合并的分支代码,回到上一次未合并的版本。
在这里插入图片描述
钩选对应文件
在这里插入图片描述
6、重新走上面的步骤2,选择合并到的主分支代码为提交PersonController文件的上一个版本
在这里插入图片描述

这里选择远程版本2、6会发生代码冲突。原因是: 主分支本地库working中Application文件中已经存在getUser方法和saveUser方法,如果分支合并,等于修改了同一处地方。所以会发生代码冲突。

合并完成

在这里插入图片描述
7、查看主分支代码。发现只有Application类被修改,PersonController类没有被删除。可以选择是否进行提交到主干代码库中
在这里插入图片描述
代码也同步到主线中了,这样就实现了分支向主线合并的功能。

合并分支总结

1、哪个分支合并到哪个分支,就选择哪个分支右键分支代码TortoiseSVN-->Merge,比如A分支合并到B分支,此时B分支就是主分支,选择B分支右键分支代码TortoiseSVN-->Merge
2、使用merge a range of revisions时,URL From为被合并的分支代码。即A分支
3、使用merge two different trees时,From指定为合并的主分支代码,即B分支。To指定为需要被合并的分支代码,即A分支。

主线往分支合并也是同一个道理

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SVN创建分支与合并分支 的相关文章

  • IntelliJ Subversion 需要身份验证对话框

    我正在尝试从颠覆存储库中签出一个项目 我已输入我的信息 例如网址 用户名和密码 我可以看到我的存储库中的文件夹列表 我选择我的项目并选择要签出到的目录 一切似乎都很顺利 我在 结帐选项 中单击 确定 进行结帐 选择 1 7 格式 这就是我正
  • Subversion 中的版本和项目的良好存储库布局是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们有标准的 Subversion 主干 分支 标签布局 我们有几个针对中长期项目的分支 但到目前为止还没有一个发布版本 这正在快速逼近 我们应
  • 对于独立开发人员来说,通过 file:// 访问 Subversion 存储库有什么缺点吗?

    如果您的开发计算机上安装了 Subversion 并且您不在团队中工作 那么您是否有任何理由应该使用 Subversionsvn协议而不是file 如果您自己在一台机器上工作 那么根据我的经验 使用 file 协议效果很好 即使我的团队在远
  • 设置了 @version $Id$ 的 SVN Checkout

    我在 Subversion 中进行开发 在每个 PHP 文件的顶部都有以下注释块
  • 是什么让 DVCS 中的合并变得如此简单?

    我读于乔尔谈软件 http www joelonsoftware com items 2010 03 17 html 通过分布式版本控制 分布式部分实际上不是 最有趣的部分 有趣的是 这些 系统根据变化来思考 而不是 就版本而言 and a
  • svn 提交失败:找不到文件:事务 »52-1r«

    最小可重现故障如下 gt mkdir test cd test gt svn co https svn server com repo gt vim php main php gt svn commit Sending php main p
  • 在 Windows 上使用的 Subversion Server

    哪种 Subversion SVN Server 会建议新手开始使用 Windows Server 操作系统 我想我将在客户端上使用 TortoiseSVN 并且主要进行 NET 开发 UPDATE 很好的建议 我根据投票选择我的答案 我会
  • intellij idea 和 eclipse 可以一起使用吗

    对于某些人来说 这可能看起来有点奇怪 但我仍然想知道这是否可能 到目前为止 我们有很多项目是在 eclipse 上编写的 我们中的一些人想进入 intellij idea 的世界 我们可以同时通过 eclipse 和 intellij 一起
  • 使用 Subversion,如何从一个文件剪切并粘贴到另一个保留历史记录的文件

    情况是我花了一些时间搞乱一些实验代码 我现在想将该代码的一部分 大约 500 行 移动到另一个文件中 但我不想丢失历史记录 就像我进行简单的文本编辑器剪切和粘贴一样 据我所知 最接近的方法是将代码从原始文件中分离出来 svn 副本 然后从两
  • 如何配置hudson忽略指定SVN文件夹下的更改?

    我正在寻找一种方法来忽略 Hudson 中指定 SVN 文件夹下的更改 这与 TeamCity 中的排除文件夹和 CC Net 中的过滤器相同 我在SVN GUI配置下没有找到任何配置选项 在 Hudson 1 334 中 在构建配置中的
  • tmatesoft.svn.core.SVNAuthenticationException:svn:E170001

    我们正在一个遗留项目 maven 中工作来设置devop 詹金斯首发 Jenkins 构建现在没有问题 但是 在将 sonarqube 与 jenkins 集成时 我们收到以下错误 ERROR Error during SonarQube
  • git-svn SVN 作者文件的相对路径?

    我已经使用 git svn 从工作中克隆了一个 SVN 存储库 在最初的克隆过程中 我提供了一个 SVN 作者文件 当我进行初始克隆时 git 设置了authorsfile作为绝对路径 但是 我在工作机器和笔记本电脑上保留了这个 git 存
  • Ubuntu + SVN:无法打开请求的 SVN 文件系统

    我知道这个问题已经被问过很多次了 我相信我明白答案 但我仍然没有运气 我都尝试过one repo and multiple repos配置 两者都有相同的问题 因此 对于我感兴趣的配置
  • SVN 提交前撤消删除

    如果您从 SVN 工作副本中删除了一个目录 但尚未提交 则如何将其恢复并不明显 当您输入 svn undo d 时 Google 甚至建议将 svn undo delete before commit 作为常见查询 但搜索结果没有任何帮助
  • 重新整合工作流程

    各位专家您好 我这个 Tortoise SVN 的老新手 问一个简单的问题 我正在一个分支上工作 现在想将分支中的更改 提交后 合并到主干 但是我不确定正确的工作流程 在解决所有可能的冲突后 我是否应该首先将主干合并到我的工作副本 然后将我
  • 如何从 SVN 获取所有未版本化文件的列表?

    有时 您正在开发并决定提交 却忘记了您在项目中创建了一些文件 然后几天后 你的朋友从 Subversion 中得到了你的版本 并抱怨有些文件似乎丢失了 你意识到了 啊糟糕 我忘记添加那些文件了 如何从 Subversion 获取不受版本控制
  • 递归删除属性

    Tortoise SVN 可以选择递归地将属性应用于所有子文件夹 子文件 现在我需要删除这个属性 我怎样才能递归地做到这一点 我没有找到如何使用 GUI 递归删除属性 但您可以使用 svn 命令行工具删除属性 svn propdel PRO
  • svn 恢复所有属性更改

    我有一个 svn 工作副本 我试图将最近的几个修订反向合并到其中 由于我改变了主意 我在合并完成之前取消了合并 现在 我的工作副本有几千个 更改 来自对大多数文件的祖先相关属性的更新 我有大约 10 个文件 其中混合了真实的代码更改 我不想
  • $id:文件名、创建日期/时间 Exp $

    我经常在 C C 源代码中遇到以下语句 Id lzio c v 1 24 2003 03 20 16 00 56 roberto Exp Id file name version timestamp creator Exp 您知道哪些软件会
  • 为什么 Jenkins SVN 插件在连接到我的 VisualSVN 服务器时会出现错误 E170001?

    我对 VisualSVN 服务器的了解 它支持 Windows Active Directory 身份验证和使用我的 Windows 用户名和密码的 基本 身份验证 我可以成功使用 TortoiseSVN CollabNet 和 Mac O

随机推荐

  • linux中copy_to_user()和copy_from_user()函数

    由于内核空间与用户空间的内存不能直接互访 因此借助函数 copy from user 完成用户空间到内核空间的复制 函数copy to user 完成内核空间到用户空间的复制 copy from user 和 copy to user 的原
  • 从第一人称的角度去带你了解Shell脚本的编写过程及思路

    前言 最近有朋友拿了两个文本给我 里面全都是IP地址 第一个IP地址是已安装相关服务的主机地址 第二个地址则是某一区域的所有主机IP地址 其中第一个文本有部分内容与第二个文本的内容重复 说明是已经安装了的 而第一个文本除了包含第二个文本的部
  • 单节锂电池充放电及外部供电自动切换的电路--原理介绍

    目录 单节锂电池充放电及外部供电自动切换的电路 原理介绍 1 电源输入与输出 2 虚线左边的电路是充电电路 3 虚线右侧的电路是自动切换电路 4 元器件的选择 5 PCB设计建议 单节锂电池充放电及外部供电自动切换的电路 原理介绍 介绍一种
  • 利用matlab建立一个压缩机的热力学数学模型,给出具体的代码

    我不太懂你在说什么 但是我可以提供一些参考资料 可以帮助你建立压缩机的热力学数学模型 1 MATLAB编程指南 https www mathworks com help matlab programming guide html 2 MAT
  • WSL2 在 Windows10下的 网卡 配置问题

    网络上的大部分解决方案是 在Hyper V 的WSL的虚拟交换机中的连接类型改成外部网络 然后在用户目录 USERPROFILE 下面创建一个配置文件 wslconfig wsl2 networkingMode bridged 桥接模式 v
  • CTFHub-web(cookie注入)

    文章目录 一 解题步骤 二 关于sql中 id 多少 的说明 一 解题步骤 1 题目为cookie注入 我们首先先看一下cookie里的值有没有什么可以帮助我们思考的东西 id 1 很明显存在sql注入 2 我们抓包来一步步的进行注入会更方
  • .Net Core跨域处理

    查看官方文档 https docs microsoft com zh cn aspnet core security cors view aspnetcore 2 2 分两部分处理跨域 ConfigureServices里添加 servic
  • 【华为OD机试】模拟消息队列【2023 B卷

    华为OD机试 真题 点这里 华为OD机试 真题考点分类 点这里 题目描述 让我们来模拟一个消息队列的运作 有一个发布者和若干消费者 发布者会在给定的时刻向消息队列发送消息若此时消息队列有消费者订阅 这个消息会被发送到订阅的消费者中优先级最高
  • awk的数组学习心得

    http bbs chinaunix net thread 2312439 1 2 html 在文本处理的工作中 awk的数组是必不可少的工具 在这里 同样以总结经验和教训的方式和大家分享下我的一些学习心得 如有错误的地方 请大家指正和补充
  • 医学图像语义分割最佳方法的全面比较:UNet和UNet++

    点击上方 AI公园 关注公众号 选择加 星标 或 置顶 作者 Sergey Kolchenko 编译 ronghuaiyang 导读 在不同的任务上对比了UNet和UNet 以及使用不同的预训练编码器的效果 介绍 语义分割是计算机视觉的一个
  • 超好用的数学公式识别软件mathpix!

    在写科研论文或者其他论文 亦或者将word里的公式搬到latex里进行排版 数学公式总是一项非常艰巨的任务 在电脑上输入的速度远远没有手写来得快 既然如此 有没有办法直接识别手写的公式呢 有 就是这个软件 mathpix 怎么使用呢 下载安
  • Linux-RPM软件包管理/dnf管理软件/源码安装教程/使用systemd管理服务

    文章目录 管理软件包 RPM软件包 Linux软件包管理概述 RPM软件包管理 RPM软件包管理的优缺点 使用RPM命令管理软件 安装 查询 升级 卸载 RPM命令常用参数 RPM命令 安装 RPM命令 卸载 RPM命令 升级 RPM 查询
  • jdbc原理与步骤

    jdbc原理 1 加载JDBC驱动 并将其注册到DriverManager 2 建立数据库连接 获取connection对象 3 建立Statement对象或PreparedStatement对象 4 执行SQL语句 5 访问结果集Resu
  • 送本书《Python 之旅》

    在线阅读 下载 在线阅读 https www bookstack cn books explore python 下载 关注公众号马上码回复 pythonzl Python 是一门面向对象 解释型的高级程序设计语言 它的语法非常简洁 优雅
  • 分析游戏《明日方舟》的成功要素

    明日方舟 这个出身并不显赫 玩法也绝非时下主流的游戏一经上线 就在一个月内连续霸榜 在正式上线一个月的时候 顺理成章地登顶App Store畅销榜榜首 简单介绍游戏信息与核心玩法 游戏名称 明日方舟 英文名称 Arknights 制作厂商
  • element-ui el-tree树形控件 默认箭头更改

    这是基础性 那么怎么修改呢 很简单只需要在css中修改 注意 vue中修改需要添加 deep el icon arrow right color 49c0ff el table el table expand icon el icon ar
  • 秒杀多线程第十五篇 多线程十大经典案例之一 双线程读写队列数据

    秒杀多线程第十五篇 多线程十大经典案例之一 双线程读写队列数据 多线程十大经典案例之一双线程读写队列数据 案例描述 MFC对话框中一个按钮的响应函数实现两个功能 显示数据同时处理数据 因此开两个线程 一个线程显示数据 开了一个定时器 响应W
  • jdk 16中改进的ZGC

    内存对象重定位的优化 预留堆空间 heap reserve 是堆空间中特殊的一块小空间 无法用于java线程的常规分配 而当发生gc时需要进行对象重分配时才会使用 此举确保了空的堆区域可用 即使是在java线程角度看堆空间已满 仍可进行对象
  • arch/x86/entry/syscall_64.o:(.rodata+0xa78): undefined reference to `sys_get_pid_info‘

    今天添加系统调用以后 使用make指令编译内核的时候出现了 arch x86 entry syscall 64 o rodata 0xa78 undefined reference to sys myprint 这个错误 错误原因是我使用的
  • SVN创建分支与合并分支

    SVN创建分支与合并分支 SVN忽略target文件夹 SVN创建分支 SVN合并分支 merge a range of revisions merge two different trees 合并分支总结 SVN忽略target文件夹 鼠