Skip to main content

Module pack

Module pack 

Source
Expand description

packfile (version 2) の解析。

pack は「12 byte header + object entry の列 + SHA-1 trailer」から成る。entry の 圧縮後長は記録されないため、先頭から順に伸長しながら境界を求める。parse 時に 全 entry を一度 materialize して oid を確定し、oid 順の index (entry あたり 24 byte) を構築する。object の内容は保持せず、読み出しのたびに伸長し直す (メモリを CPU で贖う方針)。

Structs§

Pack
解析済みの packfile。data は pack 全体 (header と trailer を含む)。

Constants§

DEFAULT_BASE_CACHE_BYTES
Pack::parse が delta 解決の途中結果を保持する一時 cache の既定予算 (byte)。 解析中のみ確保し、Pack には残らない。

Functions§

write_pack
object の列から packfile (version 2、非 delta) を生成する。