0

When we clone a remote we get we get instead of object packed files which seems to be some performance optimization to reduce size.
But how is this optimization done? If I understand these are binary files with the same contents as the original objects so how exactly they occupy less space? Is the implementation some standard one?

Haralan Dobrev
  • 7,440
  • 2
  • 47
  • 64
Jim
  • 18,010
  • 31
  • 126
  • 240
  • Maybe you don't get the deleted refs? – biziclop Dec 20 '16 at 20:57
  • 1
    Because they are compress? Why `C` tag? – Stargateur Dec 20 '16 at 20:57
  • @Stargateur:Git is written in C right? So maybe it is about the way we write binary files in compact manner in C? Some standard pattern? How are they compressed? – Jim Dec 20 '16 at 21:09
  • 1
    Possible duplicate of [Are Git's pack files deltas rather than snapshots?](http://stackoverflow.com/questions/5176225/are-gits-pack-files-deltas-rather-than-snapshots) – Raymond Chen Dec 20 '16 at 21:14

1 Answers1

0

As I mention in "How does git store files?", Git does use deltas for storage.

The result includes pack files, using a custom implementation of a diff algo for delta computation.

Community
  • 1
  • 1
VonC
  • 1,129,465
  • 480
  • 4,036
  • 4,755