我从对这个问题的回复中知道索引文件如何存储文件的信息,但它们没有考虑树。
例如在下图中;左侧是第一次提交后的索引文件,右侧是临时更改后的索引文件。
这些字节是如何构成的?它们的含义是什么?
根据我在这里找到的:
标头由固定签名TREE
(4 个字节)和随后数据的长度00 00 00 19
(4 个字节)组成,在本例中为 25 个字节长度,00
...
在头部之后是条目,每个条目对应一棵树,在这种情况下我们只有根树,每个条目依次由以下条目组成:A0
00
,因为这是根树。30
对应ASCII值1
,即当前树覆盖的blob个数(这个值可以是-1
所有的树,当有更改未提交时占用2个字节)20
0
.0A
(换行符)46F83FD789EB9A8DA35167B39173878D7E4F85A0
。