Index

CLOS class index
Superclass:

[‘T’]

Metaclass:

standard-class

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.