Code

Add description of OFS_DELTA to the pack format description
authorPeter Eriksen <s022018@student.dtu.dk>
Sun, 6 Apr 2008 20:51:49 +0000 (22:51 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 7 Apr 2008 00:22:46 +0000 (17:22 -0700)
Signed-off-by: Peter Eriksen <s022018@student.dtu.dk>
Acked-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/technical/pack-format.txt

index aa87756a55dfe6337f06b8aece0ed88d092036b1..1803e64e465fa4f8f0fe520fc0fd95d0c9def5bd 100644 (file)
@@ -103,10 +103,24 @@ Pack file entry: <+
      packed object data:
         If it is not DELTA, then deflated bytes (the size above
                is the size before compression).
-       If it is DELTA, then
+       If it is REF_DELTA, then
          20-byte base object name SHA1 (the size above is the
                size of the delta data that follows).
           delta data, deflated.
+       If it is OFS_DELTA, then
+         n-byte offset (see below) interpreted as a negative
+               offset from the type-byte of the header of the
+               ofs-delta entry (the size above is the size of
+               the delta data that follows).
+         delta data, deflated.
+
+     offset encoding:
+         n bytes with MSB set in all but the last one.
+         The offset is then the number constructed by
+         concatenating the lower 7 bit of each byte, and
+         for n >= 2 adding 2^7 + 2^14 + ... + 2^(7*(n-1))
+         to the result.
+
 
 
 = Version 2 pack-*.idx files support packs larger than 4 GiB, and