gitpackgit-verify-pack

How to read the output of "git verify-pack -v"


I use git verify-pack -v pack_file.pack to get the list of all the objects contained in that pack.

The output is something like:

...
ca3c18fab3b277d9b7a70eae352175ca52ea1936 tree   67 75 21484
287edc22a3bba297bb2cc0fcac1a010ab87cc8d5 tree   99 107 21559
a469ac1d3fb2d5a8a2903875bd2981c3ee0dc1f6 tree   99 107 21666
360615f28f2c7409c97d46d6163c4d31a0e22dea blob   3086 1405 21773 1 85e0feee1d0cf66a2cdc469df1ea7d10a4b717d2
32cb35d3799ed230cf83b7d7778e8248dede4a2a blob   425 389 23178 1 889787d116be38832df44542b6a31e1b627d77e7
493d6d93cbea415628bed044df01bbbce918e0fc blob   30 61 23567 1 889787d116be38832df44542b6a31e1b627d77e7
775a650bd506dc6cda16bdfec01e874db9d288e0 blob   5253880 5245607 23628
ed139d6d50cc43f89c27392621f20d174d0bf051 blob   436 361 5269235 1 775a650bd506dc6cda16bdfec01e874db9d288e0
29ba8ed1be8238ba0c2de016e99e6b2f5f88c87a blob   47 75 5269596 1 581f246266ab3e409e8fb287dde9dad0cd255296
9846efeebfa8550498cb8fa0565f0d4f87416283 blob   644 386 5269671 1 581f246266ab3e409e8fb287dde9dad0cd255296
...

How can I read these lines? In particular if I take the following line:

360615f28f2c7409c97d46d6163c4d31a0e22dea blob   3086 1405 21773 1 85e0feee1d0cf66a2cdc469df1ea7d10a4b717d2

What are the number after "blob" (3086 1405 21773 1) and the hash at the end of the line (85e0feee1d0cf66a2cdc469df1ea7d10a4b717d2)?

Thank you.


Solution

  • As per the documentation:

    When specifying the -v option the format used is:

    SHA-1 type size size-in-packfile offset-in-packfile
    

    for objects that are not deltified in the pack, and

    SHA-1 type size size-in-packfile offset-in-packfile depth base-SHA-1
    

    for objects that are deltified.