Crate gix_commitgraph

Source
Expand description

Read, verify, and traverse git commit graphs.

A commit graph is an index of commits in the git commit history. The Graph stores commit data in a way that accelerates lookups considerably compared to traversing the git history by usual means.

As generating the full commit graph from scratch can take some time, git may write new commits to separate files instead of overwriting the original file. Eventually, git will merge these files together as the number of files grows.

§Feature Flags

  • serde — Data structures implement serde::Serialize and serde::Deserialize

Modules§

file
Operations on a single commit-graph file.
init
verify
Auxiliary types used by graph verification methods.

Structs§

File
A single commit-graph file.
Graph
A complete commit graph.
Position
A generalized position for use in Graph.

Constants§

GENERATION_NUMBER_INFINITY
The number of generations that are considered ‘infinite’ commit history.
GENERATION_NUMBER_MAX
The largest valid generation number.
MAX_COMMITS
The maximum number of commits that can be stored in a commit graph.

Functions§

at
Instantiate a commit graph from an .git/objects/info directory, or one of the various commit-graph files.