Fast implementation of Git in pure Go

research: dpack fetch

runxiyu.tngl.sh 96029bf3 319ff35f

verified
+8
+8
research/dynamic_packfiles.txt
··· 17 17 18 18 19 19 research bitcask 20 + 21 + 22 + 23 + fetch: take current pack, remove dead objects/holes, filter objects 24 + out, record offsets and adjust ofs_deltas since they always go 25 + backwards, write the pack back; then stream written pack to client. 26 + two-step necessary because pack header includes object count; could 27 + have a custom new protocol that doesn't do so.