On 3/20/2018 11:03 AM, Duy Nguyen wrote: > On Tue, Mar 20, 2018 at 4:43 PM, Luke Robison wrote: >> Is there any documentation of the contents of the binary delta datain a >> packfile, and how to interpret them? I found >> https://github.com/git/git/blob/master/Documentation/technical/pack-format.txt >> documenting the packfile itself, but the "compressed delta data" seems >> largely undocumented. The source code of >> https://github.com/git/git/blob/master/diff-delta.c is pretty dense. > The output is consumed by patch_delta() in patch-delta.c if I'm not > mistaken. This function is less than 100 lines, probably much easier > to see the delta format. Thank you, that was much easier to read, and I've got my prototype working now. I also found this site to be quite helpful: http://stefan.saasen.me/articles/git-clone-in-haskell-from-the-bottom-up/#delta_encoding