2014-12-04 108 views
8

在git中使用浅度克隆时(使用--depth选项),根提交被标记为嫁接浅层克隆中的“嫁接”提交到底是什么?

enter image description here

谷歌搜索并没有导致任何satisfacting文档。

它似乎与git grafts没有任何关系,类似的术语暗示。
它只是一个标志,表明这个提交实际上有更多的父母,并不是“真正的”根提交?还是有什么更特别的吗?

回答

5

从你的链接:

它通过让用户录制提交虚假祖先的信息。通过这种方式,你可以让git假装提交所创建的父集集合与创建提交时记录的父集集合不同。

在一个浅克隆,你承诺是一个应该有父母,但不是在你的回购。所以它似乎是一个很好的嫁接用例。

In effect

防守:浅提交确实有父母,但不是在浅 回购,因此,移植物被引入假装 这些提交没有父母。