Commit History
type 'a t = 'a S.t
The type for store handles.
type node = S.Node.key
The type for node values.
type commit = S.key
The type for commit values.
Create a new commit.
Get the commit parents.
Commits form a append-only, fully functional, partial-order data-structure: every commit carries the list of its immediate predecessors.
merge t
is the 3-way merge function for commit.
val lcas : [> `Read ] t -> ?max_depth:int -> ?n:int -> commit -> commit -> (commit list, [ `Max_depth_reached | `Too_many_lcas ]) Stdlib.result Lwt.t
Find the lowest common ancestors lca between two commits.
val lca : [ `Read | `Write ] t -> info:Info.f -> ?max_depth:int -> ?n:int -> commit list -> (commit option, Merge.conflict) Stdlib.result Lwt.t
val three_way_merge : [ `Read | `Write ] t -> info:Info.f -> ?max_depth:int -> ?n:int -> commit -> commit -> (commit, Merge.conflict) Stdlib.result Lwt.t
Compute the lcas
of the two commit and 3-way merge the result.
Same as GRAPH.closure but for the history graph.