SVN创建分支与合并分支

这篇具有很好参考价值的文章主要介绍了SVN创建分支与合并分支。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SVN忽略target文件夹

鼠标右键项目 -> TortoiseSVN -> Settings
SVN创建分支与合并分支
1、*号代表所有,*.idea *target 忽略.idea文件夹和target文件夹
2、注意每个过滤的文件中间要留空格

SVN创建分支

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

SVN合并分支

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

1、分支添加查询用户接口代码,提交代码。
SVN创建分支与合并分支
2、将分支代码合并到主干
将分支合并到主干,需要选择主干代码右键Merge,选择对应合并类型处理。
将主干合并到分支,就需要选择对应分支右键Merge,选择对应合并类型处理。

SVN创建分支与合并分支
3、选择合并类型
SVN创建分支与合并分支

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

merge a range of revisions

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

merge two different trees

1、分支spring-boot-demo1128新增保存用户方法saveUser1,并commit提交远程库。
SVN创建分支与合并分支
主分支spring-boot-demo新增PersonController类,方法getPerson,并commit提交远程库。
SVN创建分支与合并分支

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

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

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

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

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

合并完成

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

合并分支总结

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分支。

主线往分支合并也是同一个道理文章来源地址https://www.toymoban.com/news/detail-447243.html

到了这里,关于SVN创建分支与合并分支的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • git忽略.idea文件夹

    1.修改**.gitignore**文件 在最后一行添加 2.打开git bash终端 重点: --cached不会把本地的.idea删除 git add . git commit -m ‘忽略idea’ git pull git push

    2024年02月13日
    浏览(49)
  • 如何在 Git 中忽略文件和文件夹

    学了么社区,营造专业的学习环境,完善专业的学习资料,打造一个属于学习的网站,目前只开发计算机编程语言模块,可以微信加群(搜索微信号xuelem)进行学习讨论。 Git 是一个流行的版本控制系统。开发人员通过它可以在项目上进行协作。 Git 允许你跟踪你在一段时间内

    2024年02月01日
    浏览(73)
  • git提交时忽略文件及文件夹方法

    如果要忽略的文件没有被跟踪过,可以直接在.gitnore文件中写要忽略的内容即可: .gitignore内容: 如果要忽略的文件已经是被跟踪状态,则需要先把本地缓存删除,变成未跟踪状态,然后再提交。 就是这些内容。

    2024年02月12日
    浏览(56)
  • idea git 提交 忽略文件或者文件夹

    方式1. 右键文件或者文件夹 git - Add to .gitignore   即可忽略 你会发现在.git/info/exclude 文件中 出现刚刚添加的忽略文件 # git ls-files --others --exclude-from=.git/info/exclude # Lines that start with \\\'#\\\' are comments. # For a project mostly in C, the following would be a good set of # exclude patterns (uncomment them if yo

    2024年02月13日
    浏览(62)
  • 如何从多个文件夹内转移全部文件(忽略文件夹的结构)(进行复制)(再打包)

    首先,需要用到的这个工具: 百度 密码:qwu2 蓝奏云 密码:2r1z 04文件夹里面有只有1个名称为\\\"1\\\"的文件夹,“1”里面有“2”,“2”有“3”,“3”有“4”,从“1”开始,都有5个兔兔的图片,这是“1”里面的文件夹结构,现在要做的就是忽略文件夹结构,提取出全部的兔兔

    2023年04月10日
    浏览(97)
  • .gitignore 文件——如何在 Git 中忽略文件和文件夹详细教程

    在任何当前工作的 Git 仓库中,每个文件都是这样的: 追踪的(tracked) - 这些是 Git 所知道的所有文件或目录。这些是新添加(用 git add 添加)和提交(用 git commit 提交)到主仓库的文件和目录。 未被追踪的(untracked) - 这些是在工作目录中创建的,但还没有被暂存(或用

    2024年02月05日
    浏览(53)
  • Git中.gitignore的配置(git上传忽略文件/文件夹)

            在实际开发过程中,我们很多项目都需要使用git工具进行代码的拉取和提交等操作。但项目由于环境配置和打包等操作生成了一些不必要上传的文件夹或者一些我们自定义的文件不需要上传,这时候我们需要去配置.gitignore文件。 语法 # 开头为注释行 空行即直接写文

    2024年02月12日
    浏览(62)
  • git 忽略 node_modules 文件夹

    git 忽略 node_modules 文件夹 在开发过程中,如果不想跟踪 node_modules 文件中的许多更改,可以在项目中创建一个 .gitignore 文件,用来设置 git 忽略该文件夹。 忽略根文件夹中的 node_modules 文件夹 文件结构: .gitignore 中提到的文件/文件夹不会被 git 跟踪 。 所以要忽略 node_modules,

    2024年02月12日
    浏览(69)
  • Git基础教程:配置.gitignore文件以忽略指定的文件和文件夹(嵌入式)

    Git基础教程:配置.gitignore文件以忽略指定的文件和文件夹(嵌入式) 在进行Git版本控制时,经常需要忽略某些文件或文件夹,以避免将它们包含在版本控制中。这在嵌入式系统开发中尤其重要,因为项目中可能包含大量生成的文件、临时文件和编译输出等,这些文件不应该

    2024年02月08日
    浏览(51)
  • 多分支merge忽略文件合并

    该文章已同步收录到我的博客网站,欢迎浏览我的博客网站,xhang’s blog .gitattributes 文件是 Git 版本控制系统中的一个配置文件,它用于指定 Git 如何处理文件的二进制数据,以及如何标识文件的类型。 具体来说,.gitattributes 文件的作用包括以下几个方面: 指定二进制文件的类

    2024年02月08日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包