SmartImplementation of smart protocol.
This module does not have any Git logics. It provides a light implementation of the Smart protocol to be able to fetch/pull or push with a Git server.
module Capability : sig ... endCapabilities module.
module Advertised_refs : sig ... endmodule Proto_request : sig ... endmodule Want : sig ... endmodule Have : sig ... endmodule Result : sig ... endmodule Negotiation : sig ... endmodule Commands : sig ... endmodule Status : sig ... endmodule Shallow : sig ... endtype error = [ | `End_of_input| `Expected_char of char| `Unexpected_char of char| `Expected_string of string| `Expected_eol| `Expected_eol_or_space| `Unexpected_end_of_input| `No_enough_space| `Assert_predicate of char -> bool| `Invalid_advertised_ref of string| `Invalid_shallow of string| `Invalid_negotiation_result of string| `Invalid_side_band of string| `Invalid_ack of string| `Invalid_result of string| `Invalid_command_result of string| `Invalid_command of string| `Invalid_want of string| `Invalid_have of string| `No_enough_space| `Unexpected_pkt_line of string| `Unexpected_flush| `Invalid_pkt_line of string ]val pp_error : error Fmt.tmodule Context : sig ... endval proto_request : Proto_request.t sendval negotiation_done : unit sendval flush : unit sendval commands : (string, string) Commands.t sendval send_pack : ?stateless:bool -> bool -> string sendval advertised_refs : (string, string) Advertised_refs.t recvval recv_pack :
?push_stdout:(string -> unit) ->
?push_stderr:(string -> unit) ->
bool ->
[ `Payload of string * int * int | `End_of_transmission | `Stdout | `Stderr ]
recvval recv_flush : unit recvval recv_commands : (string, string) Commands.t option recvval send_acks : string Negotiation.t list sendval recv_ack : string Negotiation.t recvval packet : trim:bool -> string recvval send_advertised_refs : (string, string) Advertised_refs.t sendval return : 'v -> ('v, 'err) tval fail : 'err -> ('v, 'err) tval error_msgf :
('a, Stdlib.Format.formatter, unit, ('b, [> `Msg of string ]) t)
Stdlib.format4 ->
'a