Commit Briefs


Stefan Sperling

implement support for commit coloring in got-read-pack for speed

ok op, tracey


Stefan Sperling

reduce GOT_PACK_CACHE_SIZE to 32, otherwise it uses too many open files

found by tracey


Stefan Sperling

cache a list of known pack index files when the repository is opened

Avoids overhead due to readdir calls while searching a pack index. ok op@


Stefan Sperling

reuse existing deltas when creating pack files

tested by thomas, naddy, and myself





Christian Weisgerber

indentation fixes


Stefan Sperling

handle pack index files which lack a corresponding pack file

ok millert



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.


Yang Zhong

add fd field to got_repository, modify got_packidx_open to use fds

These changes are intended to make got more compatible with FreeBSD's Capsicum. ok stsp


Stefan Sperling

detect unknown repository format extensions (such as sha256 format)

ok millert