比较两个分支 类 的最简单方法

Easiest way of compare classes of two branch

我们创建了两个分支,一个开发组致力于 master 分支,另一个开发组致力于开发分支。我们在过去 2 个月中在两个分支中开发了不同的需求,现在我们想要合并这两个分支。我们用的是SVN,但是合并这些class并不容易,因为两个分支中的同一个class改了好几次,现在合并起来很复杂。合并这两个分支的最简单方法是什么?分支历史对我们来说并不重要。我们也可以使用 git 工具,或者可视化工具。

一般来说,这就是为什么我们必须经常拉取更改,以便我们的代码始终与大师的代码保持同步。在您的情况下,您必须手动合并更改。

如果您想逐步应用在主分支上所做的更改,请执行 rebase

喜欢,

git checkout your_branch
git rebase -i master

这将允许您按时间顺序应用您的提交,因此您可以逐个提交合并更改提交..从而减少冲突的数量。

您似乎混淆了合并历史记录 和合并作为协调变化。 这两个大部分时间是同时完成的——当一个执行 使用他们的 VCS 的合并操作,——这就是为什么他们通常不这样做的原因 心目中神采奕奕。

但事实上,它们是不同的,您可以利用这一点:

  1. 运行 使用 VCS 的正常合并操作。

    你们会有冲突。这是不可避免的,没关系。

  2. 通过使用解决违规文件中的冲突 合并双方之一

    类似于svn checkout --theirs ^path/to/that/file.java

  3. 采用 class 实现的两个版本 并提出 另一个以合理的方式(代码方式)调和它们。

  4. 用实现更新文件。 运行 测试以确保它 按预期工作。

  5. 提交。