Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
val name : OpamUrl.backend
val pull_url :
?full_fetch:bool ->
?cache_dir:OpamTypes.dirname ->
?subpath:OpamTypes.subpath ->
OpamTypes.dirname ->
OpamHash.t option ->
OpamTypes.url ->
OpamTypes.filename option OpamTypes.download OpamProcess.job
pull_url ?full_fetch ?cache_dir ?subpath local_dir checksum remote_url
pulls the contents of remote_url
into local_dir
.
Two kinds of results are allowed:
local_dir
and returned as Some filename
local_dir
have been synchronised with its own, and None
is returnedchecksum
can be used for retrieval but is NOT checked by this function.
If full_fetch
is set to true, VCS repository is retrieved with full history (by default, no history). If cache_dir
is given, the directory is used by VCS tool as a its cache directory. If subpath
is given, only that subpath
of the url is retrieved.
val fetch_repo_update :
OpamTypes.repository_name ->
?cache_dir:OpamTypes.dirname ->
OpamTypes.dirname ->
OpamTypes.url ->
OpamRepositoryBackend.update OpamProcess.job
pull_repo_update
fetches the remote update from url
to the local repository at dirname
, but does not apply it, allowing for further verifications. The file or directory returned is always temporary and should be cleaned up by the caller.
val repo_update_complete :
OpamTypes.dirname ->
OpamTypes.url ->
unit OpamProcess.job
repo_update_complete dirname url
finalizes the update of the repository after verification of the patch returned from pull_repo_update
with Update_patch file
is applied. Version control systems, e.g. Mercurial, that track the state of the working directory automatically use this to update internal caches.
val revision : OpamTypes.dirname -> OpamTypes.version option OpamProcess.job
Return the (optional) revision of a given repository. Only useful for VCS backends. Is not expected to work with pull_repo_update
, which doesn't update the VCS commit information.
val sync_dirty :
?subpath:OpamTypes.subpath ->
OpamTypes.dirname ->
OpamTypes.url ->
OpamTypes.filename option OpamTypes.download OpamProcess.job
Like pull_url
, except for locally-bound version control backends, where it should get the latest, uncommitted source. First, it performs a pull_url
, then remove deleted files, and finally copy via rsync unversioned & modified-uncommitted files.
val get_remote_url :
?hash:string ->
OpamTypes.dirname ->
OpamTypes.url option OpamProcess.job
get_remote_url ?hash dirname
return the distant url of repo dirname
, \ if found. When hash
is specified, it checks that this hash (branch or \ commit) is present in the distant repository and returns the url with \ this hash. If the hash is absent it returns the remote url with no hash.