Module type Sync.S

Sync interface used by backend-specific Git implementations such as Mem and Git_unix

type hash
type store
type error#row
and error = private [>
| Mimic.error
| `Exn of exn
]
val pp_error : error Fmt.t
val fetch : ?push_stdout:( string -> unit ) -> ?push_stderr:( string -> unit ) -> ?threads:int -> ctx:Mimic.ctx -> Smart_git.Endpoint.t -> store -> ?version:[> `V1 ] -> ?capabilities:Smart.Capability.t list -> ?deepen:[ `Depth of int | `Timestamp of int64 ] -> [ `All | `Some of (Reference.t * Reference.t) list | `None ] -> ( (hash * (Reference.t * hash) list) option, error ) Stdlib.result Lwt.t
val push : ctx:Mimic.ctx -> Smart_git.Endpoint.t -> store -> ?version:[> `V1 ] -> ?capabilities:Smart.Capability.t list -> [ `Create of Reference.t | `Delete of Reference.t | `Update of Reference.t * Reference.t ] list -> ( unit, error ) Stdlib.result Lwt.t