libgit2

index

Version:

The index (or "cache", or "staging area") is the contents of the next commit. In addition, the index stores other data, such as conflicts that occurred during the last merge operation, and the "treecache" to speed up various on-disk operations.

Objects

Memory representation of an index file

An iterator for entries in the index

An iterator for conflicts in the index

Structs

Time structure used in a git index entry

In-memory representation of a file entry in the index

Macros

Mask for name length

Mask for index entry stage

Shift bits for index entry

Macro to get the stage value (0 for the "main index", or a conflict value) from an index entry

Macro to set the stage value (0 for the "main index", or a conflict value) for an index entry

Current version for the git_index_options structure

Static constructor for git_index_options

Enums

Flags for index entries

Bitmasks for on-disk fields of git_index_entry's flags_extended

Capabilities of system that affect index actions

Flags for APIs that add files matching pathspec

Git index stage states

Callbacks

Callback for APIs that add/remove/update files matching pathspec

Functions

Create a new bare Git index object as a memory representation of the Git index file in 'index_path', without a repository to back it

Create an in-memory index object

Free an existing index object

Get the repository this index relates to

Read index capabilities flags

Set index capabilities flags

Get index on-disk version

Set index on-disk version

Update the contents of an existing index object in memory by reading from the hard disk

Write an existing index object from memory back to disk using an atomic file lock

Get the full path to the index file on disk

Get the checksum of the index

Read a tree into the index file with stats

Write the index as a tree

Write the index as a tree to the given repository

Get the count of entries currently in the index

Clear the contents (all the entries) of an index object

Get a pointer to one of the entries in the index

Get a pointer to one of the entries in the index

Remove an entry from the index

Remove all entries from the index under a given directory

Add or update an index entry from an in-memory struct

Return the stage number from a git index entry

Return whether the given index entry is a conflict (has a high stage entry)

Create an iterator that will return every entry contained in the index at the time of creation sorted by path. This iterator is backed by a snapshot that allows callers to modify the index while iterating without affecting the iterator.

Return the next index entry in-order from the iterator

Free the index iterator

Add or update an index entry from a file on disk

Add or update an index entry from a buffer in memory

Remove an index entry corresponding to a file on disk

Add or update index entries matching files in the working directory

Remove all matching index entries

Update all index entries to match the working directory

Find the first position of any entries which point to given path in the Git index

Find the first position of any entries matching a prefix of a path inside a given folder, suffix the prefix with a '/'.

Add or update index entries to represent a conflict entries that exist at the given paths will be removed.

Get the index entries that represent a conflict of a single file

Removes the index entries that represent a conflict of a single file

Remove all conflicts in the index (entries with a stage greater than 0)

Determine if the index contains entries representing file conflicts

Create an iterator for the conflicts in the index

Returns the current conflict (ancestor, ours and theirs entry) and advance the iterator internally to the next value