Commit Briefs

fe621944e8 Stefan Sperling

merge new diff implementation from the git.gameoftrees.org diff.git repository

This new diff implementation was started by Neels Hofmeyr during the u2k20 hackathon and now replaces diffreg.c code lifted from the OpenBSD base system. The integration of this code into Got was done by me. Got now uses the patience diff algorithm by default. The diff.git repository will remain the primary repository for the diff code, which already compiles and runs on other operating systems such as Linux. Any fixes and improvements for files inherited from the diff.git repository should be written against that repository and synced to got.git afterwards.



ab2f42e760 Stefan Sperling

cache delta data buffers in an LRU cache





4c9641fdb6 Stefan Sperling

fix and simplify blame algorithm

Always diff against latest version of file. This is much easier since there is no need to keep track of lines shifting around.




563fca6e4a Stefan Sperling

make tog compile again


9e672c7443 Stefan Sperling

implement got_ref_write()


6353ad76e4 Stefan Sperling

make 'got update' merge file edits


25a58941e2 Stefan Sperling

remove the pathset abstraction again; replaced by RB tree



f054b67ad0 Stefan Sperling

remove object_idcache; use object_idset instead


6bef87be90 Stefan Sperling

move object cache out of repository.c to its own file


079b2f6564 Stefan Sperling

add a Makefile hierarchy which builds the whole show


ad242220ad Stefan Sperling

implement fork+exec (and by the way, fix the build...)


a440fac05e Stefan Sperling

move object parsing code into a separate file


e79f468ebe Stefan Sperling

re-enable object cache; committed accidentally



2977948937 Stefan Sperling

fix typo in Makefile comments: CPLAGS -> CFLAGS


ccfe88e6ed Stefan Sperling

provide a compile-time toggle for object caching


c35a794348 Stefan Sperling

account for line shift in blame; lots of help from tb@


84451b3ef7 Stefan Sperling

implement incremental blame display for tog