据我所知,Git通过追溯当前HEAD通过其父节点到根节点的变化来计算出存储库的当前状态。
合并提交有两个父母,例如C6
:
我理解拥有这样多个父母的优点,理由等等。
但是,我不明白你如何追溯历史。如果您的头部位于master
分支的顶端,并且您一次追溯一个提交,那么Git如何知道C6
的“真实”父级是C5
?它只是它们存储在提交文件中的顺序吗?
还是我误解了什么?这不是Git所做的吗?
答案 0 :(得分:6)
没有“真正的”父母这样的东西。合并有多个父母,可能超过两个,并且没有一个比另一个更真实。你在想的是第一个父母,这应该给你答案;父母被命令。