diff options
author | Tay Ray Chuan <rctay89@gmail.com> | 2011-07-12 14:10:25 +0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-07-12 09:29:20 -0700 |
commit | 8c912eea94a2138e8bc608f7c390eb0b313effb0 (patch) | |
tree | 244d67eaac3f77d6645bdf69b87e23a90dbb2485 /xdiff/xdiffi.h | |
parent | 46c8f2988dc9a6012babd5833a6245ceff214483 (diff) | |
download | git-8c912eea94a2138e8bc608f7c390eb0b313effb0.tar.gz |
teach --histogram to diff
Port JGit's HistogramDiff algorithm over to C. Rough numbers (TODO) show
that it is faster than its --patience cousin, as well as the default
Meyers algorithm.
The implementation has been reworked to use structs and pointers,
instead of bitmasks, thus doing away with JGit's 2^28 line limit.
We also use xdiff's default hash table implementation (xdl_hash_bits()
with XDL_HASHLONG()) for convenience.
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'xdiff/xdiffi.h')
-rw-r--r-- | xdiff/xdiffi.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/xdiff/xdiffi.h b/xdiff/xdiffi.h index ad033a8e6a..7a92ea9c4d 100644 --- a/xdiff/xdiffi.h +++ b/xdiff/xdiffi.h @@ -57,5 +57,7 @@ int xdl_emit_diff(xdfenv_t *xe, xdchange_t *xscr, xdemitcb_t *ecb, xdemitconf_t const *xecfg); int xdl_do_patience_diff(mmfile_t *mf1, mmfile_t *mf2, xpparam_t const *xpp, xdfenv_t *env); +int xdl_do_histogram_diff(mmfile_t *mf1, mmfile_t *mf2, xpparam_t const *xpp, + xdfenv_t *env); #endif /* #if !defined(XDIFFI_H) */ |