Skip to main content

GitFetcher

Struct GitFetcher 

Source
pub struct GitFetcher {
    pub cache_root: PathBuf,
}
Expand description

Git-backed dependency fetcher.

Uses the system git CLI. On fetch it clones (or updates) into <cache_root>/git/<key>/, then checks out the requested tag/branch/rev. When force is false and the checkout already exists at the right commit, it is reused without re-cloning.

Fields§

§cache_root: PathBuf

Root directory holding all cached dependencies (e.g. .sdkt-cache).

Implementations§

Source§

impl GitFetcher

Source

pub fn new(cache_root: impl Into<PathBuf>) -> Self

Create a fetcher rooted at cache_root.

Source

pub fn resolved_rev_for(dep: &Dependency, checkout: &Path) -> String

The commit SHA that a given reference resolves to (empty on failure).

Trait Implementations§

Source§

impl DependencyFetcher for GitFetcher

Source§

fn fetch( &self, name: &str, dep: &Dependency, force: bool, ) -> Result<FetchOutcome, FetchError>

Materialize dep (named name) into the cache and return its on-disk location. force re-fetches/updates an existing checkout.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.