Skip to main content

Module sequencer_marker

Module sequencer_marker 

Source
Expand description

Proof, without a Git process, that a sequencer marker names nothing on the files ref storage. What: Proof, without a Git process, that a sequencer marker such as MERGE_HEAD names nothing. Why: A commit asks git rev-parse --verify --quiet <marker> for each of three markers, and in almost every commit none exists. On the files ref storage that question reads a fixed list of places, so when every one of them is empty the answer is “absent” without a process; any entry in any place, of any kind or content, says “maybe present” and the caller asks Git, which alone decides whether the entry resolves (a dangling marker still counts as a conclusion).

In TS you’d write (pseudocode):

const maybePresent = names.map((name) => lookupPlaces(layout, name).some(exists) || packedRefs.includes(name));

Functions§

markers_maybe_present
What: For each name, whether a marker of that name may exist: false is proof that git rev-parse --verify --quiet <name> exits non-zero. Why: The files backend resolves a name only through a loose entry at one of six paths or a line of packed-refs; reftable storage and anything unreadable answer “maybe”.