Commit Briefs




Stefan Sperling

ignore SIGWINCH while polling in the main process

Avoids an error where tog(1) would exit with "poll: Interrupted system call" while the terminal window was being resized. ok millert




Stefan Sperling

got.1: make double-quotes appear in the rendered man page as intended

Patch by Nam Nguyen


Stefan Sperling

add tests for the bug fixed in commit 1fee9f40e2ed335d4ec8899954b59b43990b97c3

one of these tests is still failing; there is another edge case left to fix


Stefan Sperling

fix 3-way merge of files which lack a final \n

problem found by jrick ok millert



Stefan Sperling

Xr gotadmin(1)


Stefan Sperling

introduce 'gotadmin info'




Stefan Sperling

do not update symlinks which are already up-to-date

This fixes spurious 'U' notifications for symlinks during 'got update' that occurred even when the work tree was fully up-to-date. Observed on a work tree of the FreeBSD src repo and reproduced in our test suite by adding a no-op update at the end of a test which deals with updating symlinks.



Stefan Sperling

bump version number


Stefan Sperling

CHANGES for 0.52




Klemens Nanni

diff: reduce duplicate code

Condense error checking to reduce a future diff moving those lines around; this pattern is already used in other parts of the tree. fine stsp ok tracey


Stefan Sperling

when reading a pack index byte-swap fields at compile-time where possible

suggested by mpi@ ages ago



Stefan Sperling

fix off-by-one in got_repo_cache_pack()


Stefan Sperling

increase pack index cache size from 16 to 64 to improve performance

This can make a huge difference on repositories which contain more than 16 pack files, at the expense of additional open file handles. My test case was a ports.git repository with > 60 pack files (these accumulate due to 'got fetch', and 'git repack -a' would condense them). With cache size 16 'got update' in /usr/ports took more than 60 seconds. With cache size 64 the same command took less than 5 seconds. The root cause is probably that mapping and unmapping large files over and over again is expensive on OpenBSD.