Crate gix_blame

Source
Expand description

A crate to implement an algorithm to annotate lines in tracked files with the commits that changed them.

§Terminology

  • Source File
    • The file as it exists in HEAD.
    • the initial state with all lines that we need to associate with a Source File.
  • Blamed File
    • A file at a version (i.e. commit) that introduces hunks into the final ‘image’.
  • Suspects
    • The versions of the files that can contain hunks that we could use in the final ‘image’
    • multiple at the same time as the commit-graph may split up.
    • turns into Source File once we have found an association into the Blamed File.

Structs§

BlameEntry
A mapping of a section of the Blamed File to the section in a Source File that introduced it.
Options
Options to be passed to file().
Outcome
The outcome of file().
Statistics
Additional information about the performed operations.

Enums§

Error
The error returned by file().

Functions§

file
Produce a list of consecutive BlameEntry instances to indicate in which commits the ranges of the file at suspect:<file_path> originated in.