如何轻松合并两个源文件?

时间:2009-02-12 13:44:19

标签: c# version-control merge diff

我正在与VS2005中的另一位C#同事合作,这是一个非常复杂的项目。但是,我们没有版本控制系统,我们互相发送最新版本并将更改复制到我们自己的文件中。

我们现在必须将两个文件(大多数项目是单个表单文件)合并到项目的最后一个版本中。

有什么建议吗?也许尝试差异工具?它必须快速完成,并且可能学习如何使用复杂的修订控制程序是不可行的。

6 个答案:

答案 0 :(得分:8)

我将免费为您讲授不使用版本控制的讲座,但最好的办法是尝试使用像WinMerge这样的差异工具来比较2个文件的差异,并手动合并每个文件的变化。你已经把它变成了一个文件。

如果您在每次更改之前都拥有公用文件,那么您可以使用3向合并功能生成一个包含所有更改的文件。

有人向我指出WinMerge不提供3向合并,因此请参考this other question找到支持它的工具。

答案 1 :(得分:2)

我们使用BeyondCompare - 我们发现这是一个出色的比较和合并工具。

我理解现在需要速度来生成最终版本的代码。

但是,如果您打算开始另一个项目,那么值得花时间来设置源控制系统。在整个项目过程中,您将节省时间!

答案 2 :(得分:1)

试试SourceGear DiffMerge。我团队的一些成员甚至使用它而不是Visual Studio中的标准比较/合并工具。

答案 3 :(得分:1)

我认为WinMerge非常适合区分和合并文件。

但是,我会肯定建议您自己使用某种源控制系统。 CVS,Subversion,Git,Mercurial,等等!你选择哪个并不重要,只需要一个。您几乎可以立即获得投资回报,并且您还将了解在所有严肃的软件开发中至关重要的事情。

答案 4 :(得分:0)

尝试WinMerge

  

WinMerge是Windows的开源差异和合并工具。 WinMerge可以比较文件夹和文件,以易于理解和处理的可视文本格式呈现差异。

答案 5 :(得分:0)

因为我在寻找完全不同的东西时才发现此问题,并且注意到WinMerge不进行三向合并的断言。

这曾经是真的,但是WinMerge受新的管理,并且已经进行了三路合并。在撰写本文时,当前的WinMerge版本是2.16.2,可从WinMerge.Org获得(用于32位和64位的安装套件以及源代码)。