git_index_entry

In-memory representation of a file entry in the index.

This is a public structure that represents a file entry in the index. The meaning of the fields corresponds to core Git's documentation (in "Documentation/technical/index-format.txt").

The flags field consists of a number of bit fields which can be accessed via the first set of GIT_INDEX_ENTRY_... bitmasks below. These flags are all read from and persisted to disk.

The flags_extended field also has a number of bit fields which can be accessed via the later GIT_INDEX_ENTRY_... bitmasks below. Some of these flags are read from and written to disk, but some are set aside for in-memory only reference.

Note that the time and size fields are truncated to 32 bits. This is enough to detect changes, which is enough for the index to function as a cache, but it should not be taken as an authoritative source for that data.

Members

Variables

ctime
.git_index_time ctime;
Undocumented in source.
dev
uint dev;
Undocumented in source.
file_size
uint file_size;
Undocumented in source.
flags
ushort flags;
Undocumented in source.
flags_extended
ushort flags_extended;
Undocumented in source.
gid
uint gid;
Undocumented in source.
id
libgit2.oid.git_oid id;
Undocumented in source.
ino
uint ino;
Undocumented in source.
mode
uint mode;
Undocumented in source.
mtime
.git_index_time mtime;
Undocumented in source.
path
const(char)* path;
Undocumented in source.
uid
uint uid;
Undocumented in source.

Meta