Index#

class index#

A git index

Using#

generic (open-index object)#
(open-index (repository REPOSITORY))
(open-index (path STRING))
(open-index (path PATHNAME))

Returns an index object for OBJECT (a repository)

macro (with-index (var &optional repository-or-path) &body body)#

Load an index from a repository, path or if none is specified then an in-memory index is used. The newly opened index is bound to the variable VAR.

Parameters:
  • var – the symbol the opened index will be bound to.

  • repository-or-path – the repository or path to open the index from.

  • body – the body of the macro.

Adding#

generic (index-add-file path index)#
(index-add-file (path STRING) (index INDEX))
(index-add-file (path PATHNAME) (index INDEX))
(index-add-file (entry LIST) (index INDEX))

Adds the PATH to the INDEX.

Parameters:
  • path – the relative path of a file to be added to the repository.

State#

generic (index-conflicts-p index)#
(index-conflicts-p (index INDEX))
Return T if the index contains any conflicting

changes.

These functions assist management of the state of the in memory copy of the index.

generic (index-reload index)#
(index-reload (index INDEX))

Reload the state of the INDEX with objects read from disk.

generic (index-write index)#
(index-write (index INDEX))

Write the INDEX back to the file system.

method (entries (object INDEX) &key start end)#

Returns the elements of the collection OBJECT as a list. The start and end keyword arguments allow to retrieve a subset of all elements. All entries with index satisfying

START <= INDEX < END

are returned. If END is not specified or nil, no END condition exists. start defaults to 0.

See also: entries

Clearing#

generic (index-clear index)#
(index-clear (index INDEX))

Clear contents of the INDEX removing all entries. Changes need to be written back to disk to take effect.

Convert to Tree#

generic (index-to-tree index)#
(index-to-tree (index INDEX))

Write the current index to a new tree object.