我从未修改过的文件中的Git合并冲突

时间:2012-07-20 15:59:24

标签: android git android-source git-merge git-rebase

过去几周我一直在研究Android源代码。

在平台/构建存储库中,我检查了android-4.0.4_r2.1标记。这成了我的“ics”分支。现在,当对android-4.1.1_r1标记进行合并或重新定位时,我在一个我从未编辑过的文件中出现合并冲突。

这些是有问题的回购(和标签):

https://android.googlesource.com/platform/build/+/android-4.0.4_r2.1

https://android.googlesource.com/platform/build/+/android-4.1.1_r1

这是从第一个标签分叉的分支,我试图将后一个标签合并到:

https://github.com/slimdroid/platform_build/commits/ics

我完全不知道造成这种情况的原因。我不是一个git的初学者,但是我不知道如果没有冲突这个标签的话我怎么也不能合并。应该有一个共同的基础。

有关信息,我的冲突位于具体构建BUILD_ID的行的core / build_id.mk中。

2 个答案:

答案 0 :(得分:2)

我将在这里复制Jean-Baptiste的回答,一个为AOSP为Google工作的人:

  

你没有做错任何事。

     

您所看到的是Google内部开发的神器   过程

     

在某些时候,ICS脱离了主要的合并流程   谷歌,我们正在准备第一版的果冻豆。那里   然而,仍然有一点ICS活动,在git上   级别没有合并到Jelly Bean中。这就是你所看到的   这里:最新版本的ICS有一些变化   不是在果冻豆,并试图改变最新的ICS   果冻豆使这些脱颖而出。

     

检查“repo forall platform / build -c git log   android-4.1.1_r1..android-4.0.4_r2.1“ - 那将发现提交   这令你感到惊讶。

     

JBQ

答案 1 :(得分:1)

我没有使用git,所以我在这里可能完全错了。但我理解你的假设是第一个标签指向的提交是另一个标签的祖先。只有在这种情况下,您才能保证它们之间不会发生合并冲突。

您可以通过执行git merge-base first-tag second-tag来测试此假设。