代码之家  ›  专栏  ›  技术社区  ›  BanksySan

Git提交可以有多个树对象吗?

git
  •  1
  • BanksySan  · 技术社区  · 2 年前

    提交对象总是只有一个树对象吗?

    我想不出哪种情况会是这样,但我也看不到任何明确说明这一点的文档。

    2 回复  |  直到 2 年前
        1
  •  1
  •   torek    2 年前

    一个提交对象是否总是只有一个[top-level]树对象?

    我想不出哪种情况会是这样,但我也看不到任何明确说明这一点的文档。

    这是设计的一部分:没有它, git rev-parse commit ^{tree} 不会有明确的结果。

    我们可以设想一个系统 相关的 到Git,提交可以在其中存储多个树, 1. 但首先需要解决一些设计问题。


    1. 我在几个方面考虑过这一点,包括“子模块是错误的,子树更好,但需要更好的支持”之一。我还没有解决所有问题。

    请注意,提交对象也必须只有一个 author 还有一个 committer 线 git fsck 如果格式不正确,将反对提交。

        2
  •  0
  •   matt    2 年前

    这取决于“拥有”是什么意思。承诺 实际上是一棵树(“像树一样”),这就是为什么你可以 ls-tree 信息技术但这并不意味着它是 只有 提交中的树。每个被表示的子文件夹也是一个树对象。