All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Gummerer <t.gummerer@gmail.com>
To: Enno Weichert <enno.weichert@gmail.com>, git@vger.kernel.org
Subject: Re: Subject: Something like cat-file for the index?
Date: Fri, 10 Jan 2014 13:58:44 +0100	[thread overview]
Message-ID: <871u0g2dtn.fsf@gmail.com> (raw)
In-Reply-To: <CABtFQN6n_FKTfGt1ubkL51t8n_iJ0vcYW4ZEYLOkAsFNCq0GQw@mail.gmail.com>


Hi,

Enno Weichert <enno.weichert@gmail.com> writes:
> Hi,
>
> I'd like to have a more technical look into the index file and what/how it
> stores data; call it educational spelunking.
>
> I know the index-format.txt but I'd really like to save me the work to
> implement a pretty-printed output based on it.
> I know ls-files but that's obviously not the whole thing.
>
> So: is there something like cat-file, that basically gives me a readable
> version of the information (version number and all...) in the index already
> implemented or did nobody care until now?

You can use `git ls-files --debug` and `git ls-files --stage` to get all
the information about the files in the index.  The meaning of the flags
is the only thing that's not shown by the command, and I don't think
there is a tool yet to examine them.

The undocumented --resolve-undo flag to git ls-files shows you the
resolve undo data that is stored in the index.

If you build git yourself, the `test-dump-cache-tree` helper can be used
to show all information about the cache-tree that is stored in the
index.

The you can get the version of the index either by using
`test-index-version` when you build git yourself, or by using `file
.git/index`, which in addition will give you the number of entries that
are in the index.

--
Thomas

  reply	other threads:[~2014-01-10 12:58 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-10 11:53 Subject: Something like cat-file for the index? Enno Weichert
2014-01-10 12:58 ` Thomas Gummerer [this message]
2014-01-10 14:27   ` Enno Weichert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=871u0g2dtn.fsf@gmail.com \
    --to=t.gummerer@gmail.com \
    --cc=enno.weichert@gmail.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.