module documentation
Implementation of merge-base following the approach of git.
| Class | |
Priority queue for commit processing using a min-heap. |
| Function | can |
Is it possible to fast-forward from c1 to c2? |
| Function | find |
Find lowest common ancestors of commit_ids[0] and any of commits_ids[1:]. |
| Function | find |
Find lowest common ancestors of all provided commit_ids. |
| Function | independent |
Filter commits to only those that are not reachable from others. |
| Type Variable | T |
Undocumented |
| Function | _find |
Find lowest common ancestors between commits. |
def _find_lcas(lookup_parents:
Callable[ [ ObjectID], list[ ObjectID]], c1: ObjectID, c2s: Sequence[ ObjectID], lookup_stamp: Callable[ [ ObjectID], int], min_stamp: int = 0, shallows: set[ ObjectID] | None = None) -> list[ ObjectID]:
¶
Find lowest common ancestors between commits.
| Parameters | |
lookupCallable[ | Function to get parent commits |
c1:ObjectID | First commit |
c2s:Sequence[ | List of second commits |
lookupCallable[ | Function to get commit timestamp |
minint | Minimum timestamp to consider |
shallows:set[ | Set of shallow commits |
| Returns | |
list[ | List of lowest common ancestor commit IDs |