当HEAD版本在该行没有内容时,为什么git会显示合并冲突

I'm*_*gon 1 git tree-conflict git-merge merge-conflict-resolution

我正试图git merge master从另一个分支做一个,然后我遇到了这个冲突:

<<<<<<< HEAD
=======
    t.text     "label_en"
    t.text     "help_text_en"
    t.text     "options_en"
>>>>>>> master
Run Code Online (Sandbox Code Playgroud)

我知道如何解决冲突,但我很好奇为什么git首先认为这是冲突,因为HEAD版本在特定行上没有内容.

<<<<<<< HEAD
=======
Run Code Online (Sandbox Code Playgroud)

git只是从master中添加3行并合并它不是一个简单的例子吗?


更新:

@Marcin是对的.基于答案,我做了一个测试,假设我有一个如下所示的git树:

 A ---- B  (master)
      \
        C  (another branch)
Run Code Online (Sandbox Code Playgroud)

的内容temp.txtcommit A:

    t.text    "LALALA"
Run Code Online (Sandbox Code Playgroud)

的内容temp.txtcommit B:

    t.text    "label_en"
    t.text    "help_text_en"
    t.text    "options_en"
Run Code Online (Sandbox Code Playgroud)

temp.txtin的内容commit C是空的.


在这一点上,如果我这样做:

git checkout another_branch
git merge master
Run Code Online (Sandbox Code Playgroud)

然后我会得到以下内容:

<<<<<<< HEAD
=======
    t.text     "label_en"
    t.text     "help_text_en"
    t.text     "options_en"
>>>>>>> master
Run Code Online (Sandbox Code Playgroud)

Mar*_*zek 5

你对那一行master和另一个分支进行了更改,后者从该行中删除了某些内容,git无法自动解决该冲突.