package octez-internal-libs
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ddfb5076eeb0b32ac21c1eed44e8fc86a6743ef18ab23fff02d36e365bb73d61
sha512=d22a827df5146e0aa274df48bc2150b098177ff7e5eab52c6109e867eb0a1f0ec63e6bfbb0e3645a6c2112de3877c91a17df32ccbff301891ce4ba630c997a65
doc/octez-internal-libs.irmin/Irmin/Sync/Make/index.html
Module Sync.Make
Source
Parameters
module X : sig ... end
Signature
Native Synchronization
val fetch :
db ->
?depth:int ->
Irmin__.Remote_intf.t ->
(status, [ `Msg of string ]) result Lwt.t
fetch t ?depth r
populate the local store t
with objects from the remote store r
, using t
's current branch. The depth
parameter limits the history depth. Return `Empty
if either the local or remote store do not have a valid head.
Same as fetch
but raise Invalid_argument
if either the local or remote store do not have a valid head.
The type for pull errors.
pp_pull_error
pretty-prints pull errors.
val pull :
db ->
?depth:int ->
Irmin__.Remote_intf.t ->
[ `Merge of unit -> info | `Set ] ->
(status, pull_error) result Lwt.t
pull t ?depth r s
is similar to fetch but it also updates t
's current branch. s
is the update strategy:
`Merge
usesHead.merge
. Can return a conflict.`Set
usesS.Head.set
.
val pull_exn :
db ->
?depth:int ->
Irmin__.Remote_intf.t ->
[ `Merge of unit -> info | `Set ] ->
status Lwt.t
Same as pull
but raise Invalid_arg
in case of conflict.
The type for push errors.
pp_push_error
pretty-prints push errors.
push t ?depth r
populates the remote store r
with objects from the current store t
, using t
's current branch. If b
is t
's current branch, push
also updates the head of b
in r
to be the same as in t
.
Note: Git semantics is to update b
only if the new head if more recent. This is not the case in Irmin.