package octez-internal-libs
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
sha256=ddfb5076eeb0b32ac21c1eed44e8fc86a6743ef18ab23fff02d36e365bb73d61
    
    
  sha512=d22a827df5146e0aa274df48bc2150b098177ff7e5eab52c6109e867eb0a1f0ec63e6bfbb0e3645a6c2112de3877c91a17df32ccbff301891ce4ba630c997a65
    
    
  doc/octez-internal-libs.irmin/Irmin/Sync/Make/index.html
Module Sync.MakeSource
Parameters
module X : sig ... endSignature
Native Synchronization
val fetch : 
  db ->
  ?depth:int ->
  Irmin__.Remote_intf.t ->
  (status, [ `Msg of string ]) result Lwt.tfetch 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.tpull t ?depth r s is similar to fetch but it also updates t's current branch. s is the update strategy:
- `Mergeuses- Head.merge. Can return a conflict.
- `Setuses- S.Head.set.
val pull_exn : 
  db ->
  ?depth:int ->
  Irmin__.Remote_intf.t ->
  [ `Merge of unit -> info | `Set ] ->
  status Lwt.tSame 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.