OSDN Git Service

Documentation: distinguish between ref and offset deltas in pack-format
authorStefan Saasen <ssaasen@atlassian.com>
Fri, 12 Apr 2013 05:56:24 +0000 (15:56 +1000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 12 Apr 2013 16:14:01 +0000 (09:14 -0700)
eb32d236 introduced the OBJ_OFS_DELTA object that uses a relative offset to
identify the base object instead of the 20-byte SHA1 reference. The pack file
documentation only mentions the SHA1 based reference in its description of the
deltified object entry.

Update the pack format documentation to clarify that the deltified object
representation refers to its base using either a relative negative offset or
the absolute SHA1 identifier.

Signed-off-by: Stefan Saasen <ssaasen@atlassian.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/technical/pack-format.txt

index a7871fb..f194d1c 100644 (file)
@@ -26,7 +26,9 @@ GIT pack format
 
      (deltified representation)
      n-byte type and length (3-bit type, (n-1)*7+4-bit length)
-     20-byte base object name
+     20-byte base object name if OBJ_REF_DELTA or a negative relative
+        offset from the delta object's position in the pack if this
+        is an OBJ_OFS_DELTA object
      compressed delta data
 
      Observation: length of each object is encoded in a variable