【发布时间】:2020-12-28 11:20:25
【问题描述】:
提前感谢您的回答。我使用基本的 Github 工作流程来工作,但这种情况让我很困惑。
以下是事件的背景和顺序:
- master 分支中有 2 个文件:file1 和 file2
-
dev1从master创建的分支 - 其他人在另一个分支上工作,
dev2,它也是基于master -
dev2被合并到 master 中,对 file1 和 file2 都进行了更改 - 在对 file1 和 file2 进行了一堆提交之后,我为
dev1创建了一个拉取请求,但它们都没有包含来自dev2分支的任何内容 - 我预计与
master会发生很多合并冲突,因为master现在有dev2更改而我的dev1分支没有,但Github 仅显示file1 的合并冲突, none 表示 file2。 - 我手动比较了
dev1/file2和master/file2,确实有很多不同,恐怕合并会覆盖master/file2 - 现在我什至不相信 file1 的合并冲突报告。
那我做错了什么?如何查看 master 分支与 dev1 分支的 file1 和 file2 之间的所有差异?我主要担心的是我想将 master 分支中的所有新更改合并到我的 dev1 分支中,然后不应该有任何合并冲突。
【问题讨论】:
-
这里似乎存在很大的误解。完全可以在一个分支中编辑文件并在另一个分支中编辑“相同”文件并且零冲突。那不是冲突。在一个 2000 行的文件中,每一方编辑 100 行不同的行并且仍然没有冲突是可能的。或者一个。或者100。这完全取决于细节,嗯。但关键是,我认为您没有正确设想合并是什么或冲突是什么。 100 个差异很容易意味着零冲突。