首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >SVN和Git在合并方面有什么不同?

SVN和Git在合并方面有什么不同?
EN

Stack Overflow用户
提问于 2010-04-23 01:13:02
回答 1查看 16K关注 0票数 25

正如标题所暗示的那样,我很好奇为什么有这么多人吹捧Git是比SVN分支/合并更好的选择。我之所以好奇,主要是因为SVN合并很糟糕,我想要一个替代的解决方案。

Git如何更好地处理合并?它怎麽工作?

例如,在SVN中,如果我有以下行:

你好,世界!

然后user1将其更改为:

Hello World!1

然后user2将其更改为:

Hello World!12

然后user2提交,然后user1提交,SVN会给你一个冲突。Git能解决这么简单的问题吗?

EN

回答 1

Stack Overflow用户

发布于 2010-04-23 01:21:34

不过,在处理可解决的冲突方面,Git可能比SVN更好。它的主要合并策略是递归的,即找到更改同一文件的两个提交的共同祖先,并执行三向合并。它还具有一些内置功能,用于记录和重用冲突解决方案(git-rerere)以及用于特殊情况的各种其他merge strategies

Git的历史模型(有向无环图)预计会有这样的提交。一直都是。(是的,有时会有冲突,但它们是真正的冲突,而不是无法处理合并。)

另一方面,SVN只是尝试跟踪合并发生的位置,但其模型本质上仍然是线性的。历史记录仍然只有一个提交字符串,合并跟踪信息提供了额外的帮助。据我所知,SVN并不总是能正确处理更复杂的合并模式。(一个示例是反射合并-将A合并到B中,然后将B合并到A中。)

票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2692950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档