Commits


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.


add got.conf(5) to MAN list in Makefile


add per-worktree got.conf(5) file in the .got directory; ok millert


Add initial support for network protocol. Ported from git9 by Ori Bernstein.


cache delta data buffers in an LRU cache


remove worklist code; it was only used to unlink files which we already unlink


obtain repo format version and commit author name/email from .git/config


add support for reading .git/config; parser was based on isakmpd/conf.c


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.


add 'make release' target; programs now have a version number


link _p versions of libraries if PROFILE=1; hint from claudio


WIP commit implementation


implement got_ref_write()


make 'got update' merge file edits


remove the pathset abstraction again; replaced by RB tree


properly remove empty directories left behind during updates


remove object_idcache; use object_idset instead


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


add a Makefile hierarchy which builds the whole show


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


move object parsing code into a separate file


reenable mmap in got by default; committed by accident


fix a leak in got_inflate_to_mem_mmap()


re-enable object cache; committed accidentally


in tog blame, set corret pointer to NULL after object close