Commits


fix pack index cache element rotation; keep often used entries near the front


sort and de-duplicate work tree path command line arguments This is important in cases like 'got diff file.txt file.txt' which should only show the diff for file.txt once. suggested by kn@


fix a segfault in edscript() introduced by my previous commit Found by our cherrypick regression tests.


fix merging of files which contain a dot on a line by itself Annoying bug which we inherited from OpenRCS which inherited it from OpenBSD's diff3 program. ok tracey millert


speed up 'got histedit -l' and 'got rebase -l' Cache commit timestamps in struct got_reference in case we are sorting references by commit timestamp. This avoids opening and closing commits every time we compare two references with each other. ok thomas.adam


align 'diff -c' usage help with synopsis given in man page; suggested by naddy


implement 'got diff -c' for diffing commits with optional filtering by path Need for filtering by path sugggested by kn@ ok naddy@


display the requested object type when an object could not be found ok millert@


remove code which was setting up repo_path redundantly from cmd_diff()


make got_repo_match_object_id() filter tags by the requested object type Potentially this function could return objects of a type that was not requested. Problem found by code inspection. This change does not affect any of our existing tests.


document "mg" as alias for the "merge" command


add an xfail test for a bug in merging content with a dot on a line by itself


add test for merge result when lines are inserted at the top of a file Based on a patch by Omar Polo


sync files from diff.git 346d4986568ffbcfdc53cce45dd8a468535a68f2


add support for multiple path arguments to 'got diff' positive feedback from Omar and kn ok kn


link to the FastCDC paper from deltify.c; suggested by Ori some time ago


make the number of elements in deltify's geartab explicit


Ignore tags files OK stsp


Provide lib/Makefile to enable tags file generation The root Makefile does not hook into lib/ via <bsd.subdir.mk> since it is not a program itself and thus gets included by all others. This means `make tags` skips lib/ and `make -C lib/ tags` does not know what to do; provide a minimal <bsd.lib.mk> stub and hook it up just for the "tags" such that *all* source is browsable via tags. See /usr/share/mk/bsd.README for details. Feedback stsp tb OK tb


plug memory leaks in got-fetch-pack and got-send-pack ok naddy


let 'got fetch' send all references to the server to avoid redundant downloads Problem reported by naddy. ok naddy


Fix "mandoc -T lint -W style" nits


Document command aliases in tmux(1) style, add tags for navigation Complete 95f394e8917def2c11ce292b3a8f804d261b1d12; reminder to look at gotadmin(1) from stsp, thanks.


ignore unversioned files while aborting rebase, histedit, merge or operations ok jrick


Fix "mandoc -T lint -W style got/got.1" nits