pub fn virtual_merge_base<'objects>(
first_commit: ObjectId,
second_commit: ObjectId,
others: Vec<ObjectId>,
graph: &mut Graph<'_, '_, Commit<Flags>>,
diff_resource_cache: &mut Platform,
blob_merge: &mut Platform,
objects: &'objects (impl FindObjectOrHeader + Write),
abbreviate_hash: &mut dyn FnMut(&oid) -> String,
options: Options,
) -> Result<Outcome, Error>Expand description
Create a single virtual merge-base by merging first_commit, second_commit and others into one.
Note that first_commit and second_commit are expected to have been popped off others, so first_commit
was the last provided merge-base of function that provides multiple merge-bases for a pair of commits.
The parameters graph, diff_resource_cache, blob_merge, objects, abbreviate_hash and options are passed
directly to tree() for merging the trees of two merge-bases at a time.
Note that most of options are overwritten to match the requirements of a merge-base merge.