pub struct BranchCheckout { /* private fields */ }Expand description
Checkout an existing local branch (set HEAD + update working directory).
§Examples
use ironflow_ops_git::branch::BranchCheckout;
use ironflow_core::operation::Operation;
let op = BranchCheckout::new("/path/to/repo", "feature-x");
assert_eq!(op.kind(), "git");Implementations§
Source§impl BranchCheckout
impl BranchCheckout
Sourcepub fn new(repo_path: impl Into<PathBuf>, name: impl Into<String>) -> Self
pub fn new(repo_path: impl Into<PathBuf>, name: impl Into<String>) -> Self
Create a new BranchCheckout operation.
Sourcepub async fn run(
&self,
_ctx: &OperationContext,
) -> Result<BranchCheckoutOutput, OperationError>
pub async fn run( &self, _ctx: &OperationContext, ) -> Result<BranchCheckoutOutput, OperationError>
Execute and return a typed result.
§Errors
Returns OperationError if the repository cannot be opened, the
branch does not exist, or the working directory checkout fails.
Trait Implementations§
Source§impl Operation for BranchCheckout
impl Operation for BranchCheckout
Source§fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 OperationContext,
) -> Pin<Box<dyn Future<Output = Result<Value, OperationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 OperationContext,
) -> Pin<Box<dyn Future<Output = Result<Value, OperationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Execute the operation and return the result as JSON. Read more
Source§impl TypedOperation for BranchCheckout
impl TypedOperation for BranchCheckout
Source§type Output = BranchCheckoutOutput
type Output = BranchCheckoutOutput
The concrete output type that
Operation::execute produces.Auto Trait Implementations§
impl Freeze for BranchCheckout
impl RefUnwindSafe for BranchCheckout
impl Send for BranchCheckout
impl Sync for BranchCheckout
impl Unpin for BranchCheckout
impl UnsafeUnpin for BranchCheckout
impl UnwindSafe for BranchCheckout
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