svn - 如何在不同的源代码控制系统下开发 merge 文件的陷阱测试和性能测试?

标签 svn version-control tfs mercurial

在我工作的地方,我们多年来一直在使用 Subversion(显然,我来这里的时间并不长)。这里有些人更喜欢使用 TFS,有些人更喜欢迁移到 Mercurial,有些人更喜欢保持现状。由于 Visual Studio 集成不佳,其他源代码控制(Git 等)无法运行。

新的源代码控制会减弱的最大问题/恐惧是对分支/merge 的恐惧

我想构建一个测试,直接说明哪个源代码管理更擅长 merge 两个分支。考虑到可能没有 TFS 的“演示”版本,这可能很困难。不过,这似乎是一个有趣的问题。

要对此进行测试,我需要了解以下内容:

  • merge 算法通常不擅长什么?
  • 我能否找到有关源代码控制系统(特别是 TFS)使用何种 merge 算法的信息?
  • 我能想出一种 merge 算法相对于另一种算法的优势吗?
  • 大多数 VCS 在处理哪些类型的文件时遇到问题?

更重要的是,你们中有人知道有人已经这样做了吗?

最佳答案

关于TFS,你有一个小Branching and Merging Primer ,这可能没有考虑到 branches became first-class citizen with TFS2010 .

alt text

您可以在此 Merging: hg/git vs. svn 中看到有问题的 merge 问题(最初关于 Git,但可以推广到其他 VCS):任何类型的 criss-cross merging 通常很难妥善处理。

从那里,您还可以引用:

大多数 VCS 不会 merge 二进制元素(除了一些像 word 文档)。

关于svn - 如何在不同的源代码控制系统下开发 merge 文件的陷阱测试和性能测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3653691/

相关文章:

version-control - 简单的基于 Web 的版本控制

visual-studio - 在版本控制中维护 Visual Studio vcproj 项目文件的建议

tfs - Team Foundation 服务器版本

tfs - 在团队系统中移动分支

xcode - SVN 和 Xcode 问题

svn - Visual Basic 6 项目丢失对所有用户定义类型的引用并且无法编译

svn - 我如何知道一个分支是否被合并到主干中?

svn - 仅当先前从 <URL> 合并修订版 X 到 Y 来重新集成源时,才能使用重新集成,但情况并非如此

svn - SSIS 版本控制 + 颠覆

visual-studio-2010 - TFS:删除了文件夹映射,但映射仍然显示