“diff3”和“svn merge”命令有啥区别?

Posted

技术标签:

【中文标题】“diff3”和“svn merge”命令有啥区别?【英文标题】:What is the difference between 'diff3' and 'svn merge' commands?“diff3”和“svn merge”命令有什么区别? 【发布时间】:2011-02-16 17:14:06 【问题描述】:

diff3 实用程序和svn merge 命令如何工作的算法有什么区别吗? svn merge 是否使用相同的原理或 diff3 工作方式的一些变化?例如,如果 minetheirs 文件具有相同的内容,而 svn upsvn merge 具有相同的内容,diff3 does not automatically merge 会发生变化。

我的问题也与自动合并密切相关。它是如何工作的?冲突何时发生,何时不发生?很明显,当编辑了相同的源代码行时会发生冲突,但是在某些情况下无法定义合并上下文? svn merge 是怎么定义的?

我在 svn book 的 'Copying Changes Between Branches' 页面找到了以下段落:

...svn diff 只输出有限的 补丁格式,所以有一些想法 它根本无法表达。 svn 然而,合并命令可以表达 通过直接应用它们来改变树 到你的工作副本

所有这些区别是什么?我在任何地方都找不到详细信息。

【问题讨论】:

【参考方案1】:

区别在于svn merge 命令可以表达树的变化,而svn diff 不能。深入分析svn源码后可以找到详细答案。

【讨论】:

以上是关于“diff3”和“svn merge”命令有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

SVN merge问题。

svn merge 命令详解

linux diff3-比较3个文件不同的地方

linux学习笔记22---命令diff和diff3

svn merge树冲突怎么解决

svn merge和branch 详解