Skip to main content

GitRepository

Struct GitRepository 

Source
pub struct GitRepository {
    pub proc: Option<Arc<DaggerSessionProc>>,
    pub selection: Selection,
    pub graphql_client: DynGraphQLClient,
}

Fields§

§proc: Option<Arc<DaggerSessionProc>>§selection: Selection§graphql_client: DynGraphQLClient

Implementations§

Source§

impl GitRepository

Source

pub fn as_workspace(&self) -> Workspace

Creates a synthetic workspace from this repository’s HEAD and uncommitted file changes. Pending changes are applied at the repository root. The staging split is not preserved. The source repository is not modified.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn as_workspace_opts<'a>( &self, opts: GitRepositoryAsWorkspaceOpts<'a>, ) -> Workspace

Creates a synthetic workspace from this repository’s HEAD and uncommitted file changes. Pending changes are applied at the repository root. The staging split is not preserved. The source repository is not modified.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn branch(&self, name: impl Into<String>) -> GitRef

Returns details of a branch.

§Arguments
  • name - Branch’s name (e.g., “main”).
Source

pub async fn branches(&self) -> Result<Vec<String>, DaggerError>

branches that match any of the given glob patterns.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub async fn branches_opts<'a>( &self, opts: GitRepositoryBranchesOpts<'a>, ) -> Result<Vec<String>, DaggerError>

branches that match any of the given glob patterns.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn bundle(&self, refs: Vec<impl Into<String>>) -> GitBundle

Pack the given refs and the objects needed to reconstruct them into a Git bundle.

§Arguments
  • refs - Refs to advertise in the bundle. At least one named ref is required.
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn bundle_opts( &self, refs: Vec<impl Into<String>>, opts: GitRepositoryBundleOpts, ) -> GitBundle

Pack the given refs and the objects needed to reconstruct them into a Git bundle.

§Arguments
  • refs - Refs to advertise in the bundle. At least one named ref is required.
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn commit(&self, id: impl Into<String>) -> GitCommit

Returns details of a commit.

§Arguments
  • id - Identifier of the commit (e.g., “b6315d8f2810962c601af73f86831f6866ea798b”).

May be abbreviated to an unambiguous hex prefix (4-40 characters), which is expanded against locally available objects. Remote repositories (resolved via ls-remote) can only expand prefixes of already-fetched commits; use the full SHA otherwise.

Source

pub fn head(&self) -> GitRef

Returns details for HEAD.

Source

pub async fn id(&self) -> Result<Id, DaggerError>

A unique identifier for this GitRepository.

Source

pub fn latest(&self) -> GitRef

Return the latest stable release tag, falling back to HEAD when no release exists. Release selection accepts an optional “v” prefix, incomplete versions, and zero-padded numeric components. This operation is pinned.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn latest_opts<'a>(&self, opts: GitRepositoryLatestOpts<'a>) -> GitRef

Return the latest stable release tag, falling back to HEAD when no release exists. Release selection accepts an optional “v” prefix, incomplete versions, and zero-padded numeric components. This operation is pinned.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn ref(&self, name: impl Into<String>) -> GitRef

Returns details of a ref.

§Arguments
  • name - Ref’s name (can be a commit identifier, a tag name, a branch name, or a fully-qualified ref).

Commit identifiers may be abbreviated: an unambiguous hex prefix (4-40 characters) of a commit SHA resolves like git rev-parse, with named refs taking precedence. Abbreviated SHAs resolve against locally available objects, so remote repositories (resolved via ls-remote) can only expand prefixes of already-fetched commits; use the full SHA or a named ref otherwise.

Source

pub fn tag(&self, name: impl Into<String>) -> GitRef

Returns details of a tag.

§Arguments
  • name - Tag’s name (e.g., “v0.3.9”).
Source

pub async fn tags(&self) -> Result<Vec<String>, DaggerError>

tags that match any of the given glob patterns.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub async fn tags_opts<'a>( &self, opts: GitRepositoryTagsOpts<'a>, ) -> Result<Vec<String>, DaggerError>

tags that match any of the given glob patterns.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn uncommitted(&self) -> Changeset

Returns the changeset of uncommitted changes in the git repository.

Source

pub async fn url(&self) -> Result<String, DaggerError>

The URL of the git repository.

Source

pub fn with_bundle(&self, bundle: impl IntoID<Id>) -> GitRepository

Import a Git bundle after fetching and verifying all of its prerequisites.

§Arguments
  • bundle - The Git bundle to import.
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn with_bundle_opts<'a>( &self, bundle: impl IntoID<Id>, opts: GitRepositoryWithBundleOpts<'a>, ) -> GitRepository

Import a Git bundle after fetching and verifying all of its prerequisites.

§Arguments
  • bundle - The Git bundle to import.
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn with_contents(&self, directory: impl IntoID<Id>) -> GitRepository

Replace this repository’s storage with the supplied self-contained Git repository, retaining its logical URL and push destinations. Accepts a whole checkout (including .git and pending file edits), .git contents, or a bare repository. Does not initialize a repository, merge histories, or modify either input. The receiver’s logical routing wins over the supplied Git configuration; that configuration is not rewritten. Use Directory.asGit to open the supplied repository without retaining the receiver’s routing.

§Arguments
  • directory - Existing Git storage to open. Git metadata and object dependencies must be contained in this directory.
Source

pub fn with_remote( &self, name: impl Into<String>, url: impl Into<String>, ) -> GitRepository

Register a named remote on this repository, replacing any registered remote of the same name. Registered remotes are recorded in checkouts materialized from this repository (GitRef.tree, Workspace.git.directory), so remote-aware tooling like gh can resolve and fetch from them. The origin remote also routes push when no explicit destination is passed: its push URL, or its URL, becomes the default destination. Routing metadata only, never a credential grant: pushes still authenticate with the caller’s own credentials and require approval as usual.

§Arguments
  • name - The remote’s name, e.g. “origin” or “upstream”.
  • url - The remote’s fetch URL.
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn with_remote_opts<'a>( &self, name: impl Into<String>, url: impl Into<String>, opts: GitRepositoryWithRemoteOpts<'a>, ) -> GitRepository

Register a named remote on this repository, replacing any registered remote of the same name. Registered remotes are recorded in checkouts materialized from this repository (GitRef.tree, Workspace.git.directory), so remote-aware tooling like gh can resolve and fetch from them. The origin remote also routes push when no explicit destination is passed: its push URL, or its URL, becomes the default destination. Routing metadata only, never a credential grant: pushes still authenticate with the caller’s own credentials and require approval as usual.

§Arguments
  • name - The remote’s name, e.g. “origin” or “upstream”.
  • url - The remote’s fetch URL.
  • opt - optional argument, see inner type for documentation, use _opts to use

Trait Implementations§

Source§

impl Clone for GitRepository

Source§

fn clone(&self) -> GitRepository

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl IntoID<Id> for GitRepository

Source§

fn into_id( self, ) -> Pin<Box<dyn Future<Output = Result<Id, DaggerError>> + Send>>

Source§

impl Loadable for GitRepository

Source§

fn graphql_type() -> &'static str

The GraphQL type name (e.g. "Container").
Source§

fn from_query( proc: Option<Arc<DaggerSessionProc>>, selection: Selection, graphql_client: DynGraphQLClient, ) -> Self

Construct this type from a query selection.
Source§

impl Node for GitRepository

Source§

fn id(&self) -> impl Future<Output = Result<Id, DaggerError>> + Send

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

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

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more