pub struct CopyFacts {
pub identity: WorktreeIdentity,
pub creates_or_moves: bool,
pub main_checkout_paths: Vec<String>,
pub global_prefix: Vec<OsString>,
pub environment: Vec<(OsString, OsString)>,
}Expand description
What: Everything the copy needs to know about one forwarded invocation, decided before Git starts. Why: The plan decides that the copy applies; the run performs it with real Git and the process environment.
In TS you’d write (pseudocode):
type CopyForward = { identity: GitWorktreeIdentity; command: ResolvedGitCommand; mainCheckoutPaths: string[] };Fields§
§identity: WorktreeIdentityThe repository shape the invocation selects.
creates_or_moves: boolWhether the command, after alias resolution, creates or moves worktrees.
main_checkout_paths: Vec<String>Repository paths a main-checkout source hands over (the configured rules file).
global_prefix: Vec<OsString>The invocation’s global options, replayed before the repository queries that ask for the identity again.
environment: Vec<(OsString, OsString)>The environment the invocation inherited, which may carry an outer settlement’s lease.
Trait Implementations§
impl Eq for CopyFacts
impl StructuralPartialEq for CopyFacts
Auto Trait Implementations§
impl Freeze for CopyFacts
impl RefUnwindSafe for CopyFacts
impl Send for CopyFacts
impl Sync for CopyFacts
impl Unpin for CopyFacts
impl UnsafeUnpin for CopyFacts
impl UnwindSafe for CopyFacts
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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> ⓘ
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