[−][src]Struct rs_git_lib::Repo
A Git Repository
Implementations
impl Repo
[src]
pub fn clone_from(url: &str, dir: Option<String>) -> IOResult<Self>
[src]
clone a git repo
Arguments
url
- a string that holds de repo url from where we will clonedir
- an optional string with the path where the cloned repo will be out. If None the dir wil be created based on url.
Examples
// will write the repo on /tmp/rs-git directory use rs_git_lib::Repo; let repo = Repo::clone_from("https://github.com/lnds/rs-git-lib.git", Some("/tmp/rs-git".to_string()));
pub fn refs(self) -> Vec<Ref>
[src]
return references of cloned repo
use rs_git_lib::Repo; let repo = Repo::clone_from("https://github.com/lnds/rs-git-lib.git", Some("/tmp/rs-git".to_string())); let refs = repo.unwrap().refs(); assert_eq!(refs[0].name, "HEAD"); assert_eq!(refs[1].name, "refs/heads/master");
pub fn dir(self) -> String
[src]
return output directory of cloned repo
use rs_git_lib::Repo; let repo = Repo::clone_from("https://github.com/lnds/rs-git-lib.git", Some("/tmp/rs-git".to_string())).unwrap(); assert_eq!(repo.dir(), "/tmp/rs-git");
pub fn count_objects(self) -> usize
[src]
return how many objects are in the repo
use rs_git_lib::Repo; let repo = Repo::clone_from("https://github.com/lnds/rs-git-lib.git", Some("/tmp/rs-git".to_string())).unwrap(); assert!(repo.count_objects() > 1); let repo = Repo::clone_from("https://github.com/lnds/redondeo.git", Some("/tmp/redondeo".to_string())).unwrap(); assert_eq!(repo.count_objects(), 25);
pub fn commits(&self) -> IOResult<Vec<GitObject>>
[src]
return the list of commit objects from current branch
use rs_git_lib::Repo; let repo = Repo::clone_from("https://github.com/lnds/redondeo.git", Some("/tmp/redondeo".to_string())).unwrap(); let commits = repo.commits().unwrap(); assert_eq!(commits.len(), 5); assert_eq!(commits[4].as_commit().unwrap().get_message(), "Initial commit".to_string())
pub fn read_object(&self, sha: &str) -> IOResult<GitObject>
[src]
Auto Trait Implementations
impl !RefUnwindSafe for Repo
impl Send for Repo
impl !Sync for Repo
impl Unpin for Repo
impl UnwindSafe for Repo
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,