git如何确定特定的合并有冲突以及冲突是什么?
我的猜测是这样的:如果被合并的两个提交有一个共同的父提交,并且如果他们都改变了父提交的 X 行,那就是冲突。
使我的理解复杂化的是:
- “更改第 X 行”可能意味着用几条新行替换它,这仍然显示为一个冲突(版本 A 有这一行,版本 B 有这 5 行,或其他)
- 如果您确实在其中一个提交中插入了行,那么更笨的算法会认为所有后续行都已更改:第 30 行现在具有第 25 行的以前的内容,第 31 行具有以前的 26 内容,等等。但是 git 可以告诉那些都是一样的,不知道怎么弄
任何人都可以解释这是如何工作的,或者指向我的链接吗?