git-packfile
read object data out of git packfiles, applying ofs/ref deltas and zlib decompression.
var packfile = idxparse = fs { var pack = { return fs } { var location = packIndex pack }}
API
packfile(size, lookupRef, createReadStream) -> Packfile instance
create a packfile instance. all arguments are required.
lookupRef
should be a function that takes a buffer instance and a callback,
and calls that callback with the results of searching for that hash against all
available object databases.
createReadStream
is a function that takes a byte start and end, and should
return a readable stream object.
Packfile#read(offset, nextOffset, ready)
Read from offset until nextOffset (given by the pack index), and calls ready
with the result.
Returned objects look like so:
type: <integer git object type> data: <Buffer>
The data is decompressed and has all deltas already applied to it.
License
MIT