# Package org.eclipse.jgit.lib

Core API for repository, config, refs, object database.

See: Description

Interface Summary
Interface | Description
--- | ---
AsyncObjectLoaderQueue<T extends ObjectId> | Queue to open objects asynchronously.
AsyncObjectSizeQueue<T extends ObjectId> | Queue to examine object sizes asynchronously.
AsyncOperation | Asynchronous operation handle.
BitmapIndex | A compressed bitmap representation of the entire object graph.
BitmapIndex.Bitmap | A bitmap representation of ObjectIds that can be iterated to return the underlying `ObjectId`s or operated on with other `Bitmap`s.
BitmapIndex.BitmapBuilder | A builder for a bitmap.
CheckoutEntry | Parsed information about a checkout.
Config.ConfigEnum | Converts enumeration values into configuration options and vice-versa, allowing to match a config option with an enum value.
Config.SectionParser<T> | Parses a section of the configuration into an application model object.
ProgressMonitor | A progress reporting interface.
Ref | Pairing of a name and the `ObjectId` it currently has.
ReflogEntry | Parsed reflog entry
ReflogReader | Utility for reading reflog entries
RepositoryCache.Key | Abstract hash key for `RepositoryCache` entries.

Class Summary
Class | Description
--- | ---
AbbreviatedObjectId | A prefix abbreviation of an `ObjectId`.
AnyObjectId | A (possibly mutable) SHA-1 abstraction.
BaseRepositoryBuilder<B extends BaseRepositoryBuilder,R extends Repository> | Base builder to customize repository construction.
BatchingProgressMonitor | ProgressMonitor that batches update events.
BatchRefUpdate | Batch of reference updates to be applied to a repository.
BitmapObject | Base object type accessed during bitmap expansion.
BlobBasedConfig | Configuration file based on the blobs stored in the repository.
BranchConfig | Branch section of a Git configuration file.
BranchTrackingStatus | Status of a branch's relation to its remote-tracking branch.
CommitBuilder | Mutable builder to construct a commit recording the state of a project.
Config | Git style `.config`, `.gitconfig`, `.gitmodules` file.
ConfigConstants | Constants for use with the Configuration classes: section names, configuration keys
Constants | Misc.
CoreConfig | This class keeps git repository core parameters.
EmptyProgressMonitor | A convenient base class which provides empty method bodies for all ProgressMonitor methods.
FileMode | Constants describing various file modes recognized by GIT.
FileTreeEntry | Deprecated To look up information about a single path, use `TreeWalk.forPath(Repository, String, org.eclipse.jgit.revwalk.RevTree)`.
GitlinkTreeEntry | Deprecated To look up information about a single path, use `TreeWalk.forPath(Repository, String, org.eclipse.jgit.revwalk.RevTree)`.
IndexDiff | Compares the index, a tree, and the working directory Ignored files are not taken into account.
InflaterCache | Creates zlib based inflaters as necessary for object decompression.
MutableObjectId | A mutable SHA-1 abstraction.
NullProgressMonitor | A NullProgressMonitor does not report progress anywhere.
ObjectChecker | Verifies that an object is formatted correctly.
ObjectDatabase | Abstraction of arbitrary object storage.
ObjectId | A SHA-1 abstraction.
ObjectIdOwnerMap<V extends ObjectIdOwnerMap.Entry> | Fast, efficient map for `ObjectId` subclasses in only one map.
ObjectIdOwnerMap.Entry | Type of entry stored in the `ObjectIdOwnerMap`.
ObjectIdRef | A `Ref` that points directly at an `ObjectId`.
ObjectIdRef.PeeledNonTag | A reference to a non-tag object coming from a cached source.
ObjectIdRef.PeeledTag | An annotated tag whose peeled object has been cached.
ObjectIdRef.Unpeeled | Any reference whose peeled value is not yet known.
ObjectIdSubclassMap<V extends ObjectId> | Fast, efficient map specifically for `ObjectId` subclasses.
ObjectInserter | Inserts objects into an existing `ObjectDatabase`.
ObjectInserter.Filter | Wraps a delegate ObjectInserter.
ObjectInserter.Formatter | An inserter that can be used for formatting and id generation only.
ObjectLoader | Base class for a set of loaders for different representations of Git objects.
ObjectLoader.SmallObject | Simple loader around the cached byte array.
ObjectReader | Reads an `ObjectDatabase` for a single thread.
ObjectStream | Stream of data coming from an object loaded by `ObjectLoader`.
ObjectStream.Filter | Simple filter stream around another stream.
ObjectStream.SmallStream | Simple stream around the cached byte array created by a loader.
PersonIdent | A combination of a person identity and time in Git.
RebaseTodoFile | Offers methods to read and write files formatted like the git-rebase-todo file
RebaseTodoLine | Describes a single line in a file formatted like the git-rebase-todo file.
RefComparator | Util for sorting (or comparing) Ref instances by name.
RefDatabase | Abstraction of name to `ObjectId` mapping.
RefRename | A RefUpdate combination for renaming a reference.
RefUpdate | Creates, updates or deletes any reference.
RefWriter | Writes out refs to the `Constants.INFO_REFS` and `Constants.PACKED_REFS` files.
Repository | Represents a Git repository.
RepositoryBuilder | Base class to support constructing a `Repository`.
RepositoryCache | Cache of active `Repository` instances.
RepositoryCache.FileKey | Location of a Repository, using the standard java.io.File API.
StoredConfig | Persistent configuration that can be stored and loaded from a location.
SymbolicRef | A reference that indirectly points at another `Ref`.
SymlinkTreeEntry | Deprecated To look up information about a single path, use `TreeWalk.forPath(Repository, String, org.eclipse.jgit.revwalk.RevTree)`.
TagBuilder | Mutable builder to construct an annotated tag recording a project state.
TextProgressMonitor | A simple progress reporter printing on a stream.
ThreadSafeProgressMonitor | Wrapper around the general `ProgressMonitor` to make it thread safe.
Tree | Deprecated To look up information about a single path, use `TreeWalk.forPath(Repository, String, org.eclipse.jgit.revwalk.RevTree)`.
TreeEntry | Deprecated To look up information about a single path, use `TreeWalk.forPath(Repository, String, org.eclipse.jgit.revwalk.RevTree)`.
TreeFormatter | Mutable formatter to construct a single tree object.
UserConfig | The standard "user" configuration parameters.

Enum Summary
Enum | Description
--- | ---
CoreConfig.AutoCRLF | Permissible values for `core.autocrlf`.
CoreConfig.CheckStat | Permissible values for `core.checkstat`
CoreConfig.SymLinks | Options for symlink handling
IndexDiff.StageState | Represents the state of the index for a certain path regarding the stages - which stages exist for a path and which not (base, ours, theirs).
RebaseTodoLine.Action | Describes rebase actions
Ref.Storage | Location where a `Ref` is stored.
RefUpdate.Result | Status of an update request.
RepositoryState | Important state of the repository that affects what can and cannot bed done.

## Package org.eclipse.jgit.lib Description

Core API for repository, config, refs, object database.