Crate git_pack[][src]

Expand description

Git stores all of its data as Objects, which are data along with a hash over all data. Storing objects efficiently is what git packs are concerned about.

Packs consist of data files and index files. The latter can be generated from a data file and make accessing objects within a pack feasible.

A Bundle conveniently combines a data pack alongside its index to allow finding objects or verifying the pack. Objects returned by .find(…) are objects which know their pack location in order to speed up various common operations like creating new packs from existing ones.

When traversing all objects in a pack, a delta tree acceleration structure can be built from pack data or an index in order to decompress packs in parallel and without any waste.

Modules

a pack data file

an index into the pack file

Structs

A bundle of pack data and the corresponding pack index

Traits

Describe how object can be located in an object store with built-in facilities to supports packs specifically.

An extension trait with convenience functions.