这个剧情真的没意思……
首先,如果存在冲突,那么该冲突仅存在于一个合并提交上,而该合并提交尚不存在!(它仍然在用户的机器上,可能在索引中,但肯定不在他们的本地树中)。
其他用户根本没有冲突,直到他们进行合并或变基。
假设您确实有三个用户执行完全相同的合并,无论出于何种原因,因此他们有相同的冲突。
让我们进一步假设,正如您所建议的,他们每个人都有一个只有他们才能协调的冲突,那么他们应该每个人都将他们的工作重新建立在最新版本的代码上,并协调过程中的任何冲突。
换句话说,您似乎描述的情况如下:(如果我错了,请纠正我):
- 我们有三个开发人员,Charlie、John 和 Matt,他们都在 master 分支上工作,即提交 aaaaaaa。
- 他们也都在一个“不稳定”的分支上工作,该分支位于提交 bbbbbbbb,它与“master”不同。
- 同时,他们都决定将“不稳定”分支单独合并到“主”分支中。
- 同时,他们都意识到他们有无法协调的承诺。
理想情况下,在这种情况下应该做的是,任何知道如何进行合并的开发人员都应该合并“不稳定”。也许他们会选择一次合并几个提交,而不是直接合并两个头,或者他们可能选择重新定位整个事情——无论如何,但只有一个开发人员需要这样做。
The more frequently this is done, the easier the merge/rebase operation will be.
其余的开发人员将能够使用合并提交。