Вопрос

Мое понимание формата файла Git pack примерно такое:alt text

Где таблица имеет ширину 32 бита, а первые три 32-битных слова являются заголовком файла pack.Последняя строка из 32 бит - это первые 4 байта записи.Насколько я понимаю, размер записи задается последовательными байтами с набором MSB, за которыми следуют сжатые данные.

В первом байте, MSB которого не задан, является ли MSB частью сжатых данных или это пробел?Если это часть сжатых данных, как вы можете гарантировать, что при сжатии данных этот бит не будет установлен?

Это было полезно?

Решение

Мое прочтение этого пакет документации по файлу указывает, что для последнего байта размера (смещение 15 в вашем примере) значение MSB будет равно 0.

Другие советы

Существует также некоторая графическая документация, объясняющая некоторые особенности формата здесь.Этого раздела больше нет в книге сообщества, но он по-прежнему доступен по адресу, указанному выше.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top