gix_merge::tree

Function apply_index_entries

Source
pub fn apply_index_entries(
    conflicts: &[Conflict],
    how: TreatAsUnresolved,
    index: &mut State,
) -> bool
Expand description

Returns true if index changed as we applied conflicting stages to it, using how to determine if a conflict should be considered unresolved. Once a stage of a path conflicts, the unconflicting stage is removed even though it might be the one that is currently checked out. This removal, however, is only done by flagging it with gix_index::entry::Flags::REMOVE, which means these entries won’t be written back to disk but will still be present in the index. It’s important that index matches the tree that was produced as part of the merge that also brought about conflicts, or else this function will fail if it cannot find the path matching the conflicting entries.

Note that in practice, whenever there is a single conflict, this function will return true. Errors can only occour if index isn’t the one created from the merged tree that produced the conflicts.