Open
Description
/// Cherry-pick a commit in memory and return the resulting tree.
///
/// The `libgit2` routines operate on entire `Index`es, which contain one
/// entry per file in the repository. When operating on a large repository,
/// this is prohibitively slow, as it takes several seconds just to write
/// the index to disk. To improve performance, we reduce the size of the
/// involved indexes by filtering out any unchanged entries from the input
/// trees, then call into `libgit2`, then add back the unchanged entries to
/// the output tree.