使用TortoiseSVN解决代码冲突

前言

在项目开发过程中,通常会使用SVN或GIT进行项目管理,在团队协同开发过程中就难免会出现代码冲突的情况

在实际开发中,作为初级开发人员,刚开始遇到冲突一般都是找导师解决,害怕自己的操作影响到了远端代码,但总是找别人帮忙总不是长久之计,遂决定系统整理一下冲突解决的方法,经过尝试,发现解决方法并没有自己想象的困难

情景模拟

我将使用两份代码模拟两个程序员共同开发的场景
修改一个版本的代码并将其提交到远端,在本地修改相同位置的代码之后进行更新操作,收到代码冲突的提示
在这里插入图片描述

SVN或GIT解决冲突的原理就不再赘述了,此教程主要介绍解决冲突的操作流程
右键存在冲突的文件(或直接双击),选择Edit conflicts对冲突进行编辑
在这里插入图片描述

窗体组成

打开文件,最开始看到五颜六色的代码块,和奇奇怪怪的视图,导致我无从下手,接下来我将带你分析这些内容的具体含义
以下图为例在这里插入图片描述

该窗体由三部分组成,上方左侧表示远端代码,右侧为你的本地代码,下方则为两者合并后的代码
右键上方远端代码和本地代码窗口可选择四种操作方式:

  • 使用当前代码块
  • 使用当前整个文件
  • 使用本地代码块置于远端代码前
  • 使用本地代码块置于远端代码后
    在这里插入图片描述

而右键下方合并窗口的选择则和上方略有差别:

  • 使用远端代码
  • 使用本地代码
  • 使用本地代码块置于远端代码前
  • 使用本地代码块置于远端代码后
    在这里插入图片描述

代码块颜色分析

  • 红色表示存在冲突的代码
  • 一长串的???表示未确定你需要的代码
  • 棕黄色表示该部分代码之前的内容,例如:在此次修改之前,该段代码内容为棕黄色部分,远端代码的修改为将其删除,本地代码则修改为红色部分内容
  • 黄色表示你新增的代码
  • 灰色表示此处与远端相比无改动
  • 在右侧选择使用本地内容时,下方的合并窗口内容就会变为淡绿色
    在这里插入图片描述
    至此可以确定你需要将冲突的代码块的内容调整的结果,确认将其修改完毕后,即可点击上方的Mark as resolved,标记冲突已经解决,TortoisesSVN会将代码冲突生成的差异文件删除,之后再次点击提交代码即可
    在这里插入图片描述
    综上所述,代码冲突的类型无非就是上述四种情况,发生冲突后和同事沟通好差异应当选择的正确内容后修改即可
    至此,代码冲突已经被解决

猜你喜欢

转载自blog.csdn.net/Wangguang_/article/details/120107307