我对Git包文件格式的理解如下:
表是32位宽,前三个32位字是包文件头。最后一行32位是条目的前4个字节。据我所知,条目的大小由MSB集的连续字节指定,后跟压缩数据。
在未设置MSB的第一个字节中,是压缩数据的MSB部分,还是间隙?如果它是压缩数据的一部分,那么如何保证压缩数据时该位不会被设置?
答案 0 :(得分:10)
我对pack file documentation的读取表明大小的最后一个字节(在您的示例中为偏移量15)将MSB设置为0.
答案 1 :(得分:6)
还有一些图形文档解释了一些格式here。此部分不再出现在社区图书中,但仍可在上面的位置使用。