Git冲突标记

529

我从远程分支拉取后,遇到了冲突,打开文件时看起来像下面这样:

<<<<<<< HEAD:file.txt
Hello world
=======
Goodbye
>>>>>>> 77976da35a11db4580b80ae27e8d65caf5208086:file.txt

我需要一些关于标记的解释,哪部分代码是从远程获取的,哪部分是本地的?

代码 77976da35a11db4580b80ae27e8d65caf5208086 代表什么意思?


对于所有其他情况,请参见:https://wincent.com/wiki/Git_merge_conflict_cheatsheet - PythoNic
1个回答

841

这里从以<<<<<<<开始的行(或多行)到======之间的行:

<<<<<<< HEAD:file.txt
Hello world
=======

... 是您本地已经拥有的内容 - 您可以通过 HEAD 指向当前分支或提交来确定。 位于以 =======>>>>>>> 开头的行(或行)之间的内容:

=======
Goodbye
>>>>>>> 77976da35a11db4580b80ae27e8d65caf5208086:file.txt

在这种情况下,77976da35a11是由另一个(被拉取的)提交引入的。那个提交的对象名称(或“哈希”,“SHA1sum”等)就是合并到HEAD中的提交的唯一标识符。Git 中的所有对象,无论是提交(版本)、Blob(文件)、Tree(目录)还是标签,都有这样的一个对象名称,它们根据自己的内容进行唯一标识。


7
那么,代码77976da35a11代表什么? - Mellon
36
7797...是您试图合并的提交。 - Noufal Ibrahim
2
@Mellon 那将是提交的 SHA ID,您从中获取了更改,当您执行“pull”命令时。 - Francisco Corrales Morales
2
每次提交代码时,Git都会计算一个哈希值,该哈希值是当前内容/代码的函数。因此,7797是表示您正在合并的提交的计算哈希值。 - Rose
2
有没有办法配置这个,使我们拥有有意义的标签,如分支名称和提交 ID?或者我们永远被困在猜测如何解决 Git 开发者疯狂问题的困境中? - Owl
显示剩余6条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接