driusan / dgit

A Pure Go Git Implementation
MIT License
112 stars 10 forks source link

Can not index inflated thin packs #262

Closed driusan closed 4 years ago

driusan commented 4 years ago

When git inflates thinpacks with --thinpack, it does so by smushing all the missing references as new objects at the end of the file. Since we haven't gotten to the end of the file yet when indexing, dgit gets confused and thinks it doesn't have the object to resolve the delta against.

It seems like this would be as simple as using c.GetObject to get the object, but for some reason in the middle of index-pack dgit can't find the object that it's deltaing against (even though dgit cat-file -p $sha1 does find it), so it needs some investigation.