Struct git2::build::CheckoutBuilder
[−]
[src]
pub struct CheckoutBuilder<'cb> { // some fields omitted }
A builder struct for configuring checkouts of a repository.
Methods
impl<'cb> CheckoutBuilder<'cb>
fn new() -> CheckoutBuilder<'cb>
Creates a new builder for checkouts with all of its default configuration.
fn dry_run(&mut self) -> &mut CheckoutBuilder<'cb>
Indicate that this checkout should perform a dry run by checking for conflicts but not make any actual changes.
fn force(&mut self) -> &mut CheckoutBuilder<'cb>
Take any action necessary to get the working directory to match the target including potentially discarding modified files.
fn safe(&mut self) -> &mut CheckoutBuilder<'cb>
Indicate that the checkout should be performed safely, allowing new files to be created but not overwriting extisting files or changes.
This is the default.
fn allow_conflicts(&mut self, allow: bool) -> &mut CheckoutBuilder<'cb>
In safe mode, apply safe file updates even when there are conflicts instead of canceling the checkout.
Defaults to false.
fn remove_untracked(&mut self, remove: bool) -> &mut CheckoutBuilder<'cb>
Remove untracked files from the working dir.
Defaults to false.
fn remove_ignored(&mut self, remove: bool) -> &mut CheckoutBuilder<'cb>
Remove ignored files from the working dir.
Defaults to false.
fn update_only(&mut self, update: bool) -> &mut CheckoutBuilder<'cb>
Only update the contents of files that already exist.
If set, files will not be created or deleted.
Defaults to false.
fn update_index(&mut self, update: bool) -> &mut CheckoutBuilder<'cb>
Prevents checkout from writing the updated files' information to the index.
Defaults to true.
fn refresh(&mut self, refresh: bool) -> &mut CheckoutBuilder<'cb>
Indicate whether the index and git attributes should be refreshed from disk before any operations.
Defaults to true,
fn skip_unmerged(&mut self, skip: bool) -> &mut CheckoutBuilder<'cb>
Skip files with unmerged index entries.
Defaults to false.
fn use_ours(&mut self, ours: bool) -> &mut CheckoutBuilder<'cb>
Indicate whether the checkout should proceed on conflicts by using the stage 2 version of the file ("ours").
Defaults to false.
fn use_theirs(&mut self, theirs: bool) -> &mut CheckoutBuilder<'cb>
Indicate whether the checkout should proceed on conflicts by using the stage 3 version of the file ("theirs").
Defaults to false.
fn overwrite_ignored(&mut self, overwrite: bool) -> &mut CheckoutBuilder<'cb>
Indicate whether ignored files should be overwritten during the checkout.
Defaults to true.
fn conflict_style_merge(&mut self, on: bool) -> &mut CheckoutBuilder<'cb>
Indicate whether a normal merge file should be written for conflicts.
Defaults to false.
fn conflict_style_diff3(&mut self, on: bool) -> &mut CheckoutBuilder<'cb>
Indicates whether to include common ancestor data in diff3 format files for conflicts.
Defaults to false.
fn disable_filters(&mut self, disable: bool) -> &mut CheckoutBuilder<'cb>
Indicate whether to apply filters like CRLF conversion.
fn dir_perm(&mut self, perm: i32) -> &mut CheckoutBuilder<'cb>
Set the mode with which new directories are created.
Default is 0755
fn file_perm(&mut self, perm: i32) -> &mut CheckoutBuilder<'cb>
Set the mode with which new files are created.
The default is 0644 or 0755 as dictated by the blob.
fn path<T: IntoCString>(&mut self, path: T) -> &mut CheckoutBuilder<'cb>
Add a path to be checked out.
If no paths are specified, then all files are checked out. Otherwise only these specified paths are checked out.
fn target_dir(&mut self, dst: &Path) -> &mut CheckoutBuilder<'cb>
Set the directory to check out to
fn ancestor_label(&mut self, label: &str) -> &mut CheckoutBuilder<'cb>
The name of the common ancestor side of conflicts
fn our_label(&mut self, label: &str) -> &mut CheckoutBuilder<'cb>
The name of the common our side of conflicts
fn their_label(&mut self, label: &str) -> &mut CheckoutBuilder<'cb>
The name of the common their side of conflicts
fn progress<F>(&mut self, cb: F) -> &mut CheckoutBuilder<'cb> where F: FnMut(Option<&Path>, usize, usize) + 'cb
Set a callback to receive notifications of checkout progress.
unsafe fn configure(&mut self, opts: &mut git_checkout_options)
Configure a raw checkout options based on this configuration.
This method is unsafe as there is no guarantee that this structure will outlive the provided checkout options.