7

我经常听到有人说,与 git merge 相比,使用 git rebase 减少了合并冲突的数量,但我从来没有找到解释为什么会这样。

当两个人都修改同一行代码时,简单地在另一组更改之上重放一组更改并不能神奇地消除内在冲突,那么是什么让 rebase 更好呢?

任何人都可以提供一个简单的示例,其中合并会发生冲突但变基不会?

更新:经过 3 年的 git 经验,我开始相信我原来的前提是错误的:在 rebase 和 merge 中冲突同样可能发生。然而,rebase 确实使历史更容易理解,并在需要时进行挑选或倒带。

4

1 回答 1

0

您解决了提交中的冲突,它们将被引入,因此实际上,您没有任何冲突。

如果我在我的特性分支中编辑了一条在主分支中发生变化的行,并进行了直接合并,它将发生冲突。

如果我变基,它将在我进行此更改的提交处停止,然后我处理冲突。

于 2012-11-01T16:23:26.653 回答