冲突的解决原则

不是自己修改的地方就使用主干的。

需要特别注意的是:

分支同步主干时,远端(theirs)是主干,本地(mine/working)的是分支;

分支合入主干时,本地(mine/working)的是主干,远端(theirs)是分支。

二进制文件的冲突解决

对于*.jar *.png 等二进制文件的冲突,如果这些文件与你的业务开发是无关的,直接右键"Resolve"即可。

汉字注释中的"真假李逵"

在执行merge后,会发现代码中有些汉字注释有提示改动了,但内容却仍是一模一样的情况。见图1。

图1. 汉字注释"真假"

出现这种情况的原因是在写汉字注释时不是使用的统一的编码(如:utf-8),就会出现看起来一模一样的注释内容,但SVN仍却显示有改动的提示。这种情况有可能导致编译失败。经查,图4中左边使用的是"utf-8"编码,但右边却使用"gbk"编码。出现这种情况时得及时统一文件编码。

*.prej冲突的解决

该冲突的产生原因未明,解决方法是直接删除该文件即可。

冲突的解决范围

由于手Q是多个工程联合编译的,这里首先要认识一下根目录的概念。

根目录是指能全编App的目录。

进行分支的同步与合入主干时,所有的merge操作都是针对根目录进行操作的。但这两个操作的步骤需要解决冲突的范围是不一样的。

分支同步主干时,解决冲突的范围是根目录下的所有文件及文件夹,然后进行提交。

分支合入主干时,解决冲突的范围一般只需要是主App下面的文件及文件夹。如若其它Library App与你自己开发的业务相关,只要是经过自己修改的,那也在解决冲突的范围内,不在自己业务范围内则不用处理了,节省时间吧。

非常非常重要:冲突解决后的代码复审

分支合入主干后,最头疼的情况是什么?是发现刚合入的代码冲掉了主干原本的代码或把主干已经删除的代码又恢复了,这种情况一发生,那就只能是代码回滚,再来操作一次分支合入。要哭死了!

避免这个失误的出现,只有小心为上,可以这么做。

解决冲突时深入一个一个文件夹逐一解决,解决完每一个文件夹里的所有冲突时,右键该文件夹,点击"SVN Commit",然后逐一查看列出来的被修改的代码文件。一旦发现SVN的比较结果中有出现前后版本差异,但内容却不是自己所开发的业务需要的,此时要慎重再慎重,确认再确认,这种情况一般都是解决冲突时版本管理出错了。需Revert重新解决该文件的冲突。

本文为Sodino所有,转载请注明出处:http://blog.csdn.net/sodino/article/details/17126905

分支合入主干流程

嗯..没图说不清,见下图2吧。

图2. 分支合入主干时序图

图中标题Branch表示分支代码库,checkout版本号为ver.m的代码至本地新建的文件夹branch.working。然后再merge主干代码Ver.A至branch.working,解决完冲突后提交至分支生成新版本ver.n。第一步完成。

第二步首先checkout主干代码Ver.A至本地新建文件夹trunk.working,使用merge操作将分支ver.n合入trunk.working,第二步完成。标识此时trunk.working的临时版本号为Ver.An。。

如果在完成前两步的过程中主干有同学提交了新代码,则需要update至最新代码并解决冲突,这样trunk.working版本为Ver.AnC,解冲突后提交至主干。至此,合入操作完成。

转载于:https://www.cnblogs.com/riasky/p/3459106.html

[SVN] 分支同步、合入主干操作分享相关推荐

  1. svn建立分支linux,linux命令——svn分支創建、合並

    一,svn分支與合並有什么用? 作程序的,對svn在熟悉不過了,但對svn分支熟悉的,我想並不多.因為一般情況下,是用不着svn分支的,其實也沒有那個必要.下面我例舉幾個需要用到svn分支的情況: 1 ...

  2. git将一个分支合入到另一个分支

    git将一个分支合入到另一个分支 将分支a合入到分支b 1.首先需要切到分支b,然后pull一下,使b分支代码与远程b分支代码一致:准备就绪,在b分支下创建一个新的分支async/a-to-b // ...

  3. svn 分支上新增文件合并发生冲突_SVN把分支合并到主干过程演示

    一:普通的合并 1.visualSVNServer建立库 2.建立用户 3.关于SVN组成中trunk,branches and tags的使用查看: trunk树干,brancher复制必要改的枝, ...

  4. 图文:eclipse中SVN分支合并到主干

    在项目开发中,需要添加一些新的功能,但是又不想影响到其他开发人员的项目进度,所以决定使用SVN分支进行开发,分支开发完毕后再合并到主干.本文介绍如何在eclipse中合并分支到主干. (http:// ...

  5. SVN分支创建 与 分支和主干的代码合并问题

    本文转载自:HMonkey 的文章 https://www.jianshu.com/p/e50af339259f 最近项目中涉及到了SVN的创建分支,以及分支和主干代码的合并.在此记录一下主要的东西( ...

  6. eclipse中SVN分支合并到主干(记录)

    2019独角兽企业重金招聘Python工程师标准>>> eclipse中SVN分支合并到主干(记录) 一.从分支合并到主干 被操作对象: 主干From : 主干的 打出分支时的版本( ...

  7. 如何合并svn分支到主干上

    如何合并svn分支到主干上 1:进入主干的svn目录    2:首先查询出创建分支的开始版本 命令:svn -q --stop-on-copy 分支URL,这条命令会查询出自创建分支以后  分支上的所 ...

  8. svn分支合并到主干可能出现异常信息

    svn分支合并到主干时遇到的问题汇总: 一.在主干上右键Team -->合并(merge ) 二.提供选项:Merge Input     Merge a range of revisions ...

  9. SVN创建分支 并且把分支代码合并到主干

    从主干拉取分支 svn服务上仓库目录结构: 拉取主干代码: 切换拉取的代码 由"主干位置" 到 "新建分支" 位置 当前主干代码位置 创建分支,并且把当前代码s ...

最新文章

  1. 数据蒋堂 | 大数据计算语法的SQL化
  2. Visual C# 编程操作Excel
  3. codeforces D. Palindrome Degree(hash)
  4. 【selenium2】【unittest】
  5. 数据库经典书籍--数据库系统概念
  6. 第六篇T语言实例开发,多点找色应用
  7. how to query for a listString in jdbctemplate?--转载
  8. C++子类析构时要调用父类的析构函数吗?
  9. SpringBoot_数据访问-整合MyBatis(一)-基础环境搭建
  10. Visual Studio 竖向选择功能
  11. springboot---mybits整合
  12. throws与throw有什么关系?区别是什么?
  13. Oracle触发器5-Instead of触发器
  14. Java库转oc_急急急!各位大神:一段JAVA代码转成OC代码。
  15. Linux入门之磁盘管理(3)文件系统挂载
  16. css颜色跟背景总结(内含实例及截图)
  17. 多位专家解读工业3D打印“叫好不叫座”
  18. C#读取网卡地址的几种方法
  19. 监控和路由器不在同一个ip段_如何把二级路由器当交换机使用
  20. 下拉列表—DropDownMenu的使用解析

热门文章

  1. it专员职责_【IT专员工作内容|工作职责|IT专员做什么】-看准网
  2. php7 错误处理,PHP7升级-异常错误处理
  3. mysql事务高级_mysql高级 标量 与事务
  4. ★Python爬虫 ※ 入门详解
  5. 图解FFMPEG打开媒体的函数avformat_open_input
  6. java 怎么获取object的数据_自学java,想将来从事大数据工作,现实吗?怎么学?...
  7. wgan 不理解 损失函数_GAN:「太难的部分我就不生成了,在下告退」
  8. cant connect local mysql to_连接Mysql提示Can't connect to local MySQL server through socket的解决方法...
  9. matlab 数组范围内,MATLAB索引超出数组范围
  10. Linux查看安装了哪些软件