维基百科 http://en.wikipedia.org/wiki/Merge_%28revision_control%29#Three-way_merge表示 3 路合并比 2 路合并更不容易出错,并且通常不需要用户干预。为什么会这样呢?
3 路合并成功而 2 路合并失败的示例会很有帮助。
假设您和您的朋友都签出了一个文件,并对它进行了一些更改。您在开头删除了一行,您的朋友在末尾添加了一行。然后他提交了他的文件,您需要将他的更改合并到您的副本中。
如果您正在进行双向合并(换句话说,差异),该工具可以比较两个文件,并看到第一行和最后一行不同。但它怎么知道如何处理这些差异呢?合并版本应该包含第一行吗?它应该包括最后一行吗?
通过三向合并,它可以比较两个文件,但也可以将每个文件与原始副本进行比较(在您更改文件之前)。因此它可以看到您删除了第一行,并且您的朋友添加了最后一行。它可以使用该信息来生成合并版本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)