Expand description
Algorithms for diffing various git object types and for generating patches, highly optimized for performance.
§Feature Flags
blob
(enabled by default) — Enable diffing of blobs using imara-diff, which also allows for a generic rewrite tracking implementation.serde
— Data structures implementserde::Serialize
andserde::Deserialize
.wasm
— Make it possible to compile to thewasm32-unknown-unknown
target.
Re-exports§
pub use gix_command as command;
blob
pub use gix_object as object;
blob
Modules§
- blob
blob
For using text diffs, please have a look at theimara-diff
documentation, maintained by Pascal Kuthe. - rewrites
blob
Contains a Tracker to detect rewrites.
Structs§
- Rewrites
blob
A structure to capture how to perform rename and copy tracking, used by the rewrites::Tracker.
Functions§
- Calculate the changes that would need to be applied to
lhs
to getrhs
usingobjects
to obtain objects as needed for traversal.state
can be used between multiple calls to re-use memory. - Call
for_each
repeatedly with all changes that are needed to convertlhs
torhs
. Provide aresource_cache
to speed up obtaining blobs for similarity checks.tree_diff_state
can be used to re-use tree-diff memory between calls.objects
are used to lookup trees while performing the diff. Useoptions
to further configure how the rename tracking is performed.