pub struct MergeTreesOptions<'a> {
pub ours_label: &'a str,
pub theirs_label: &'a str,
pub ancestor_label: &'a str,
pub favor: MergeFavor,
pub detect_renames: bool,
pub rename_threshold: u8,
pub directory_renames: DirectoryRenames,
pub style: ConflictStyle,
}Expand description
Options controlling a merge_trees run.
Fields§
§ours_label: &'a strConflict-marker label for ours (e.g. a branch name or HEAD).
theirs_label: &'a strConflict-marker label for theirs.
ancestor_label: &'a strDiff3 ancestor label (the ||||||| side); merge porcelains use
"merged common ancestors".
favor: MergeFavor-Xours / -Xtheirs favouring for textual conflicts.
detect_renames: boolEnable rename-aware merging: a file renamed on one side and modified on
the other follows the rename. When false, the merge is purely
path-keyed (the historical behaviour).
rename_threshold: u8Minimum similarity (0..=100) for inexact rename detection.
directory_renames: DirectoryRenamesDirectory-rename detection mode. When DirectoryRenames::False, a file
added on one side under a directory that the other side renamed stays
put. When enabled, such files are re-homed into the renamed directory,
matching merge.directoryRenames. Requires detect_renames to have any
effect (directory renames are inferred from the file renames it finds).
style: ConflictStyleConflict-marker style for textual conflicts (merge.conflictStyle).