pub struct GitRef {
pub proc: Option<Arc<DaggerSessionProc>>,
pub selection: Selection,
pub graphql_client: DynGraphQLClient,
}Fields§
§proc: Option<Arc<DaggerSessionProc>>§selection: Selection§graphql_client: DynGraphQLClientImplementations§
Source§impl GitRef
impl GitRef
Sourcepub fn as_repository(&self) -> GitRepository
pub fn as_repository(&self) -> GitRepository
Return this ref’s repository with HEAD pinned to the selected commit. Preserves the original repository backend, connection information, and other refs. Does not modify a branch or checkout, or prune history.
Sourcepub fn as_workspace(&self) -> Workspace
pub fn as_workspace(&self) -> Workspace
Creates a synthetic workspace from this git ref.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub fn as_workspace_opts<'a>(
&self,
opts: GitRefAsWorkspaceOpts<'a>,
) -> Workspace
pub fn as_workspace_opts<'a>( &self, opts: GitRefAsWorkspaceOpts<'a>, ) -> Workspace
Creates a synthetic workspace from this git ref.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub async fn commit(&self) -> Result<String, DaggerError>
pub async fn commit(&self) -> Result<String, DaggerError>
The resolved commit id at this ref.
Sourcepub async fn commit_sha(&self) -> Result<String, DaggerError>
pub async fn commit_sha(&self) -> Result<String, DaggerError>
The resolved commit SHA at this ref.
Sourcepub fn common_ancestor(&self, other: impl IntoID<Id>) -> GitRef
pub fn common_ancestor(&self, other: impl IntoID<Id>) -> GitRef
Find the best common ancestor between this ref and another ref.
§Arguments
other- The other ref to compare against.
Sourcepub async fn id(&self) -> Result<Id, DaggerError>
pub async fn id(&self) -> Result<Id, DaggerError>
A unique identifier for this GitRef.
Sourcepub async fn log(&self) -> Result<Vec<GitCommit>, DaggerError>
pub async fn log(&self) -> Result<Vec<GitCommit>, DaggerError>
Commits reachable from this ref, newest first, starting with the commit this ref resolves to.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub async fn log_opts<'a>(
&self,
opts: GitRefLogOpts<'a>,
) -> Result<Vec<GitCommit>, DaggerError>
pub async fn log_opts<'a>( &self, opts: GitRefLogOpts<'a>, ) -> Result<Vec<GitCommit>, DaggerError>
Commits reachable from this ref, newest first, starting with the commit this ref resolves to.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub async fn name(&self) -> Result<String, DaggerError>
pub async fn name(&self) -> Result<String, DaggerError>
The resolved name of this ref.
Sourcepub fn push(&self) -> GitPushResult
pub fn push(&self) -> GitPushResult
Push this ref’s commit and history to a remote repository using the destination’s credentials. The source can come from a remote repository or an engine-side Git repository. To publish a workspace’s commits, use Workspace.git.head.push. Pushing does not modify the calling client’s checkout, and checkout hooks do not run. A missing remote ref is created. Without a lease, Git’s normal non-force rules apply. Each invocation performs a push; loading the returned receipt does not push again.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub fn push_opts<'a>(&self, opts: GitRefPushOpts<'a>) -> GitPushResult
pub fn push_opts<'a>(&self, opts: GitRefPushOpts<'a>) -> GitPushResult
Push this ref’s commit and history to a remote repository using the destination’s credentials. The source can come from a remote repository or an engine-side Git repository. To publish a workspace’s commits, use Workspace.git.head.push. Pushing does not modify the calling client’s checkout, and checkout hooks do not run. A missing remote ref is created. Without a lease, Git’s normal non-force rules apply. Each invocation performs a push; loading the returned receipt does not push again.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub async fn ref(&self) -> Result<String, DaggerError>
pub async fn ref(&self) -> Result<String, DaggerError>
The resolved ref name at this ref.
Sourcepub fn target_commit(&self) -> GitCommit
pub fn target_commit(&self) -> GitCommit
The commit this ref resolves to.
Sourcepub fn tree(&self) -> Directory
pub fn tree(&self) -> Directory
The filesystem tree at this ref.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub fn tree_opts(&self, opts: GitRefTreeOpts) -> Directory
pub fn tree_opts(&self, opts: GitRefTreeOpts) -> Directory
The filesystem tree at this ref.
§Arguments
opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub fn with_commit(
&self,
changes: impl IntoID<Id>,
message: impl Into<String>,
date: impl Into<String>,
author_name: impl Into<String>,
author_email: impl Into<String>,
) -> GitRef
pub fn with_commit( &self, changes: impl IntoID<Id>, message: impl Into<String>, date: impl Into<String>, author_name: impl Into<String>, author_email: impl Into<String>, ) -> GitRef
Create a single-parent commit on this ref by applying a changeset’s edits. Three-way merges the changeset against this ref’s tree, using its before snapshot as the base. Preserves compatible parent edits and fails on conflicts. Does not modify the input repository or host checkout. Identity and dates are explicit; neither client Git configuration nor the current clock is consulted.
§Arguments
changes- Changes to apply. Use Changeset.filter to select paths before committing.message- Commit message.date- RFC3339 author date; also the default committer date.author_name- Author name.author_email- Author email.opt- optional argument, see inner type for documentation, use_opts to use
Sourcepub fn with_commit_opts<'a>(
&self,
changes: impl IntoID<Id>,
message: impl Into<String>,
date: impl Into<String>,
author_name: impl Into<String>,
author_email: impl Into<String>,
opts: GitRefWithCommitOpts<'a>,
) -> GitRef
pub fn with_commit_opts<'a>( &self, changes: impl IntoID<Id>, message: impl Into<String>, date: impl Into<String>, author_name: impl Into<String>, author_email: impl Into<String>, opts: GitRefWithCommitOpts<'a>, ) -> GitRef
Create a single-parent commit on this ref by applying a changeset’s edits. Three-way merges the changeset against this ref’s tree, using its before snapshot as the base. Preserves compatible parent edits and fails on conflicts. Does not modify the input repository or host checkout. Identity and dates are explicit; neither client Git configuration nor the current clock is consulted.
§Arguments
changes- Changes to apply. Use Changeset.filter to select paths before committing.message- Commit message.date- RFC3339 author date; also the default committer date.author_name- Author name.author_email- Author email.opt- optional argument, see inner type for documentation, use_opts to use
Trait Implementations§
Source§impl Loadable for GitRef
impl Loadable for GitRef
Source§fn graphql_type() -> &'static str
fn graphql_type() -> &'static str
"Container").Source§fn from_query(
proc: Option<Arc<DaggerSessionProc>>,
selection: Selection,
graphql_client: DynGraphQLClient,
) -> Self
fn from_query( proc: Option<Arc<DaggerSessionProc>>, selection: Selection, graphql_client: DynGraphQLClient, ) -> Self
Auto Trait Implementations§
impl !RefUnwindSafe for GitRef
impl !UnwindSafe for GitRef
impl Freeze for GitRef
impl Send for GitRef
impl Sync for GitRef
impl Unpin for GitRef
impl UnsafeUnpin for GitRef
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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