git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Technical details about the index file format.

From
Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Date
Aug 31, 2010, 22:12 UTC
Message-ID
<AANLkTiktRqX+fhFW3mN_b5tnbKzDJY86fLpKVth7RpY9@mail.gmail.com>
In-Reply-To
<1202711335-12026-1-git-send-email-robin.rosenberg@dewire.com>

On Mon, Feb 11, 2008 at 5:28 PM, Robin Rosenberg <robin.rosenberg@dewire.com> wrote:

> +     4 byte version number:
> +       The current version is 2
The version could be 3 if extended flags are used.
Show 5 quoted lines
> +     A 16-bit field split into (high to low bits)
> +
> +       1-bit assume-valid flag
> +
> +       1-bit update-needed flag

I think this bit is CE_EXTENDED, an indication that this entry has extended flags

> +
> +       2-bit stage (during merge)
> +
> +       12-bit name length
     A 16-bit field additional flags (high to low bits), only
applicable to version 3
       1-bit reserved for future
       1-bit skip-worktree flag
       1-bit intent-to-add flag (aka "git add -N")
> +  - Extensions
> +
> +    The only know index extension today is a tree cache.

There's also "REUC" extension from read-cache.c. I personally have never touched it, so no comments.

-- 
Duy
Previous: Jonathan NiederNext: Sverre Rabbelier
Message 7 of 9 in “Technical details about the index file format.”
  1. Technical details about the index file format.Robin Rosenberg, Feb 11, 2008
  2. Tim StoakesFeb 11, 2008
  3. Junio C HamanoFeb 11, 2008
  4. Sverre RabbelierAug 31, 2010
  5. Ramkumar RamachandraAug 31, 2010
  6. Jonathan NiederAug 31, 2010
  7. Nguyen Thai Ngoc DuyAug 31, 2010
  8. Sverre RabbelierSep 1, 2010
  9. Nguyen Thai Ngoc DuySep 1, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.