原文地址:http://blog.163.com/qq371557620@yeah/blog/static/8428365820172110320574/

编码过程中,我们经常会遇到需要多个分支并行开发的情况。那么问题来了,在svn下如何建分支,开发任务完成后如何分支合并就成了开发人员需要熟练掌握的svn技能。

 
1、创建分支
在trunk(主干)上点击右键,在tortoiseSVN菜单中选择Branch/tag;
弹出对话框
在to path输入框中输入新建分支的路径,一般是:branches/分支名,也就是相当于分支保存的路径名。
在下面选择head revision in the repository,为当前SVN中trunk目录下最新的代码建立分支,如果需要为指定的revision建立分支,可以选择。
点击OK完成分支建立
 
打开branch目录,此时没有任何文件,没有刚才建立的分支。这是因为分支创建操作是在服务器端完成的,当需要编辑分支时,在branch目录下点击update,刚才建立的分支会下载下来。
1、当前复制源,及专业术语中的trunk(主干)
2、分支存放的位置,当然也是在svn版本库中。
3、写日志
4、是否把主干的路径切换到分支,如果勾选了。建立分支之后,在主干里做出的修改并提交后,更新会提交到分支上,主干的原版本不会变。所以最好不要勾选。
 
2、合并分支
加入我们是要将trunk合并到branch,那么我们就应该是在branch上操作(及在那个合并“到”的目录下操作)
在branch(分支)上点击右键,在tortoiseSVN菜单中选择merge;
弹出对话框中选择merge type
Merge a range of revisions(一般主要选择这个)
然后点击next按钮
弹出对话框
1、合并的来源

2、合并的目的

注:合并的结果会直接与目前「工作目录」(Working Copy) 做比对,并修改目前工作目录中的所有文件。因此建议在做合并之前可以将所有尚未 commit 的档案先 commit 到版本库,避免不必要的冲突事件发生
然后差不多就是点击next--->ok就可以了。当然在点击OK之前还可以点击“test merge”试试。
 
总结:
1、分支穿件主要是现在服务器端操作,本地需要update之后才能看到相关文件
2、合并前,主要是操作的那个目录先进行commit、update,保证不会out  of day。再进行merge操作
3、合并发生在本地的working copy,只要不提交(commit)就不会影响到repository.

tortoiseSVN版本合并(merge)的更多相关文章

  1. SVN SVN合并(Merge)与拉取分支(Branch/tag)操作简介

    SVN合并(Merge)与拉取分支(Branch/tag)操作简介 合并(Merge) 例子:把对feature_branch\project_name_v3.3.7_branch的修改合并到deve ...

  2. Eclipse插件svn和TortoiseSvn版本对应关系

    2019独角兽企业重金招聘Python工程师标准>>> 先说一下今天碰到问题,自己在建svn仓库和导入,导出时因为版本不一致导致的错误. 因此一定要保证Eclipse中svn插件版本 ...

  3. R语言中的横向数据合并merge及纵向数据合并rbind的使用

    R语言中的横向数据合并merge及纵向数据合并rbind的使用 我们经常会遇到两个数据框拥有相同的时间或观测值,但这些列却不尽相同.处理的办法就是使用merge(x, y ,by.x = ,by.y ...

  4. 【转】Pandas学习笔记(六)合并 merge

    Pandas学习笔记系列: Pandas学习笔记(一)基本介绍 Pandas学习笔记(二)选择数据 Pandas学习笔记(三)修改&添加值 Pandas学习笔记(四)处理丢失值 Pandas学 ...

  5. Git怎样撤销一次分支的合并Merge

    出现的问题: 某一天,所有的开发文件已经在development分支上,但是这时候,线上出了一个问题,需要及时修复,于是从master分支上,拉了一个bug分支,进行处理,master分支本应合并bu ...

  6. Lucene学习总结之五:Lucene段合并(merge)过程分析

    一.段合并过程总论 IndexWriter中与段合并有关的成员变量有: HashSet<SegmentInfo> mergingSegments = new HashSet<Segm ...

  7. Lucene学习总结之五:Lucene段合并(merge)过程分析 2014-06-25 14:20 537人阅读 评论(0) 收藏

    一.段合并过程总论 IndexWriter中与段合并有关的成员变量有: HashSet<SegmentInfo> mergingSegments = new HashSet<Segm ...

  8. TortoiseSVN的合并对比工具TortoiseMerge启动时很慢很卡的解决办法

    用了新版本的TortoiseSVN,但是在进行文件版本对比或者是解决冲突的时候,每次都要等上好几秒钟,TortoiseMerge窗口才显示出来.在Visual Studio中使用这个作为SVN工具,也 ...

  9. TortoiseSVN 版本回滚

    尝试用TortoiseSVN进行版本回滚,回滚到的版本和实际的内容有出入,可能是点了太多次给点乱了,囧~ 不过发现一个比较靠谱的方法,如下: 右键点击文件TortoiseSVN->showlog ...

随机推荐

  1. LostRoutes项目日志——编辑project.json

    第一个Scene编译后运行会报错: Uncaught TypeError: Cannot read property 'style' of null 这是因为没有在project.json中包含已经编 ...

  2. Unity3D Shader 马赛克后期效果

    //效果图 //Shader代码 Shader "Hidden/Mosaic" { Properties { _MainTex ("Texture", 2D) ...

  3. jmeter中split分隔字符

    jmeter中自带了split函数,但是,注意但是,不能使用"-",","等等符合,否则会报错. 没办法,转投入beanshell的怀抱,使用split,发现& ...

  4. css3---2D效果 ---3D效果

    CSS3边框: CSS3圆角:border-radius(**px 或 **%) 属性——创建边框线的圆角 CSS3盒子阴影:box-shadow属性——创建阴影 box-shadow:30px 0p ...

  5. PHP数组(数组正则表达式、数组、预定义数组)

    正则表达式 1.替换 $s = "hello5world"; $s = preg_replace("/\d/","#",$s); echo ...

  6. aspectj 注解

    aspectj是一个面向切面编程的框架,即实现了aop,这不是spring,它本身很小,方便简洁,spring将其整合成自己的. 与spring本身对aop的支持不同,顾问采用正则表达式或者方法名或通 ...

  7. [No0000F8]override和new的区别

    override 1. override是派生类用来重写(或覆盖)基类中方法的: 2. override不能重写非虚方法和静态方法: 3. override只能重写用virtual.abstract. ...

  8. java 验证字符串是否包含中文字符

    中文的模式:"[\\u4e00-\\u9fa5]|\\\\u" 例子: private static final Pattern p = Pattern.compile(" ...

  9. Hive日志(Hive Logging)--hive GettingStarted翻译

    Hive uses log4j for logging. By default logs are not emitted to the console by the CLI. The default ...

  10. arcgis10.4 server第一次发布地图报错:We were unable to connect to...Error:Proxy server got bad address...

    arcgis 10.4发布地图跟10.2不一样.server url里的http要改为https,否则就会连接不上.