Subject: Re: [PATCH] doc: technical details about the index file format

From: Nguyen Thai Ngoc Duy <[email-masked]>
Date: Sat, 26 Feb 2011 17:03:10 +0700

On Sun, Feb 20, 2011 at 04:30:07PM +0700, Nguyen Thai Ngoc Duy wrote:
> 2011/2/20 Sverre Rabbelier <[email-masked]>:
> > Heya,
> >
> > 2010/9/6 Nguyễn Thái Ngọc Duy <[email-masked]>:
> >> This bases on the original work by Robin Rosenberg.
> >
> > Junio, in the "what's cooking" you mention that you might jump in to
> > improve this? Duy, are you still interested in carrying this forward?
> > This patch [0] would be helpful to the hgit people as well :).
> 
> I can try to study resolve undo extension next week and see if I can
> write it down in the document.

OK here come the missing bits on top of the previous patch. Looks good?

--8<--
diff --git a/Documentation/technical/index-format.txt b/Documentation/technical/index-format.txt
index 5b1d70d..574eb3b 100644
--- a/Documentation/technical/index-format.txt
+++ b/Documentation/technical/index-format.txt
@@ -118,7 +118,7 @@ GIT index format
 === Tree cache
 
   Tree cache extension contains pre-computes hashes for all trees that
-  can be derived from the index
+  can be derived from the index.
 
   - Extension tag { 'T', 'R', 'E', 'E' }
 
@@ -137,8 +137,20 @@ GIT index format
 
 === Resolve undo
 
-  TODO
+  Resolve undo extension records staged entries before they are
+  resolved and removed from index. It can be used to recreate conflicts
+  after the conflict is incorrectly resolved.
 
   - Extension tag { 'R', 'E', 'U', 'C' }
 
   - 32-bit size
+
+  - A number of entries
+
+    NUL-terminated entry name
+
+    Entry mode of the entry in three stages, in increasing order from
+    1 to 3, in NUL-terminated ASCII octal number.
+
+    160 bit SHA-1 of the entry in three stages, in increasing
+    order from 1 to 3. A stage with zero mode will be skipped.
-->8--
-- 
Duy