代码之家  ›  专栏  ›  技术社区  ›  jcollum

如何开发陷阱测试和性能测试来合并不同源代码管理系统下的文件?

  •  3
  • jcollum  · 技术社区  · 14 年前

    在我工作的地方,我们已经使用Subversion很多年了(显然,我在这里的时间不长)。这里有些人更喜欢使用TFS,有些人更喜欢迁移到Mercurial,有些人更喜欢保持现状。其他源代码控件(Git,others)由于visualstudio集成不良而无法运行。

    最大的问题/担心新的源代码控制会减弱是 .

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

    • 合并算法通常不擅长什么?
    • 我能想出一个合并算法比另一个有什么优势吗?

    2 回复  |  直到 14 年前
        1
  •  3
  •   Community Mr_and_Mrs_D    7 年前

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

    alt text

    您可以在下面的示例中看到有问题的合并 Merging: hg/git vs. svn 问题(最初关于Git,但可以推广到其他风投):任何类型的 criss-cross merging

    在此,您还可以参考:

        2
  •  1
  •   Ryan Cromwell    14 年前

    我不确定您是否会在不同工具的性能测试中找到什么用处。所有的工具对于可解决的合并都是快速的。比较的问题和重点是它们导致冲突的频率。2008年及以前的TFS在解决冲突方面表现糟糕。2010与我使用过的任何其他系统(包括Git)都不相上下。你可能会在那里找到ney sayers,但他们想到的是2008年(不可否认,他们在解决合并问题上对你来说非常糟糕)。

    关键是要经常推拉。如果要分支,请确保经常从父分支中提取。你离开的时间越长,发生冲突的机会就越大。对于生成的文件(如resx文件和.xxproj文件)尤其如此。