Module Topkg.Vcs

type kind = [
  1. | `Git
  2. | `Hg
]
val pp_kind : Format.formatter -> kind -> unit
type commit_ish = string
type t
val kind : t -> kind
val dir : t -> fpath
val cmd : t -> Cmd.t
val find : ?dir:fpath -> unit -> t option result
val get : ?dir:fpath -> unit -> t result
val pp : Format.formatter -> t -> unit
val is_dirty : t -> bool result
val not_dirty : t -> unit result
val file_is_dirty : t -> fpath -> bool result
val head : ?dirty:bool -> t -> string result
val commit_id : ?dirty:bool -> ?commit_ish:commit_ish -> t -> string result
val commit_ptime_s : ?commit_ish:commit_ish -> t -> int result
val describe : ?dirty:bool -> ?commit_ish:commit_ish -> t -> string result
val tags : t -> string list result
val changes : ?until:commit_ish -> t -> after:commit_ish -> (string * string) list result
val tracked_files : ?tree_ish:string -> t -> fpath list result
val clone : t -> dir:fpath -> unit result
val checkout : ?branch:string -> t -> commit_ish:commit_ish -> unit result
val commit_files : ?msg:string -> t -> fpath list -> unit result
val tag : ?force:bool -> ?sign:bool -> ?msg:string -> ?commit_ish:string -> t -> string -> unit result
val delete_tag : t -> string -> unit result