Skip to main content

open_loops

Function open_loops 

Source
pub fn open_loops(
    repo: &Path,
    root_label: &str,
    opts: &ScanOptions,
) -> Result<(Vec<OpenLoop>, Option<(String, InventoryFile)>)>
Expand description

Returns all unmerged branches (except default) in a repo, optionally reading and updating the inventory memo for ahead/behind.

Light phase (default branch, merged set, for-each-ref) always runs. The heavy phase (rev-list for ahead/behind) runs only when opts.need_ahead_behind is true, and consults the inventory memo unless opts.fresh is set.

Returns the open loops and, when memoisation is active, the updated (hash, InventoryFile) pair for write-through by the caller.

§Errors

Returns Err if git fails or if the default branch is not found.