use crate::repos::Boilerplate;
use crate::Result;
use std::path::Path;
#[cfg(feature = "usegix")]
#[path = "gitbridge/gix.rs"]
mod gitctrl;
#[cfg(not(feature = "usegix"))]
#[path = "gitbridge/systemgit.rs"]
mod gitctrl;
pub fn pull(repository_path: &Path, remote_name: &str, branch_name: &str) -> Result<()> {
gitctrl::pull(repository_path, remote_name, branch_name)
}
pub fn clone<S: AsRef<str>, P: AsRef<Path>>(url: S, dest_path: P) -> Result<()> {
gitctrl::clone(url, dest_path)
}
pub fn hash<P: AsRef<Path>>(boilerplate: &Boilerplate, base_path: P) -> Result<Vec<u8>> {
gitctrl::hash(boilerplate, base_path)
}