pub struct GitTools { /* private fields */ }Expand description
Git operations service
Implementations§
Source§impl GitTools
impl GitTools
pub fn new(work_dir: Option<PathBuf>) -> Self
Sourcepub fn with_work_dir(self, dir: PathBuf) -> Self
pub fn with_work_dir(self, dir: PathBuf) -> Self
Set working directory
Sourcepub fn rev_parse_toplevel(&self) -> Result<PathBuf>
pub fn rev_parse_toplevel(&self) -> Result<PathBuf>
Resolve the repository top-level path.
Sourcepub fn current_branch(&self) -> Result<String>
pub fn current_branch(&self) -> Result<String>
Return the current branch name.
Sourcepub fn branch_exists(&self, branch: &str) -> Result<bool>
pub fn branch_exists(&self, branch: &str) -> Result<bool>
Check whether a local branch exists.
Sourcepub fn path_is_git_repo(&self) -> Result<bool>
pub fn path_is_git_repo(&self) -> Result<bool>
Check whether the current working directory is inside a git repository.
Sourcepub fn worktree_list(&self) -> Result<Vec<GitWorktreeInfo>>
pub fn worktree_list(&self) -> Result<Vec<GitWorktreeInfo>>
List all worktrees for the repository.
Sourcepub fn worktree_add(
&self,
path: &Path,
branch: &str,
base_branch: &str,
create_branch: bool,
) -> Result<GitWorktreeInfo>
pub fn worktree_add( &self, path: &Path, branch: &str, base_branch: &str, create_branch: bool, ) -> Result<GitWorktreeInfo>
Create a worktree for an existing or new branch.
Sourcepub fn worktree_prune(&self) -> Result<()>
pub fn worktree_prune(&self) -> Result<()>
Prune stale worktree metadata.
Sourcepub fn is_worktree_clean(&self, path: &Path) -> Result<bool>
pub fn is_worktree_clean(&self, path: &Path) -> Result<bool>
Check whether a worktree has uncommitted changes.
Sourcepub fn diff(&self, staged: bool, path: Option<&Path>) -> Result<String>
pub fn diff(&self, staged: bool, path: Option<&Path>) -> Result<String>
Get diff (staged or unstaged)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for GitTools
impl RefUnwindSafe for GitTools
impl Send for GitTools
impl Sync for GitTools
impl Unpin for GitTools
impl UnwindSafe for GitTools
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
Mutably borrows from an owned value. Read more
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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 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>
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().