Skip to main content

smudge

Function smudge 

Source
pub fn smudge<R: Read, W: Write>(
    store: &Store,
    input: &mut R,
    output: &mut W,
    path: &str,
    extensions: &[SmudgeExtension],
) -> Result<SmudgeOutcome, SmudgeError>
Expand description

Apply the smudge filter to input, writing the working-tree content (or pass-through bytes) to output.

  1. If input parses as a pointer, look the OID up in the store and stream the bytes out (running configured pointer extensions in reverse priority order when the pointer carries any).
  2. If input doesn’t parse as a pointer, pass it through verbatim.

path is the working-tree path passed to git’s filter; substituted for %f in each extension’s smudge command. extensions is the configured lfs.extension.<name> set; its order doesn’t matter (the chain is built from pointer.extensions in priority order).