前言
我知道在Stack Overflow上已经有很多关于合并SVN分支的问题。我已经阅读了其中许多问题,但仍然没有找到我要寻找的信息,请在提出将其视为重复内容之前,请完整地阅读这个问题。
我需要将一个 SVN 分支合并到另一个分支中。我对分支和合并的理论非常熟悉,但是我一直在实践中进行合并时遇到困难,更具体地说,是在识别和解决冲突方面。我怀疑这个问题的根本原因是我不理解完成任务所需的工具,即 TortoiseSVN 和各种可用的可视化合并工具。
基于阅读各种相关的 Stack Overflow 问题,我已经确定 Sourcegear DiffMerge 和 Beyond Compare 是执行三方合并的候选工具。我尝试了 DiffMerge,但很难有效地使用它。我期望在解决冲突时看到以下三个文件:
- 来自分支A的文件
- 来自分支B的文件
- 执行合并的结果
但实际上我看到的是:
- 来自分支A的文件
- 来自分支B的文件
- A和B的共同祖先,也就是基础修订版
这使我想知道在每次解决冲突时如何查看合并结果。我还很难实际执行此类操作,例如接受分支 A 或 B 中的特定更改。阅读更多关于这个主题的内容之后,现在似乎基础修订版才是应该显示合并结果的地方,这是正确的吗?
我认为使用 TortoiseSVN 和可视化合并工具合并分支的屏幕录像或视频教程可能会回答我关于如何有效使用这些工具的大部分未解决问题。我更感兴趣的是解决冲突的过程,而不是执行合并本身,但如果两者都介绍那就更好了。