Package org.opengrok.indexer.history
package org.opengrok.indexer.history
From the OpenGrok internals: To get the version control history Analyzer Guru, calls his old friend the good old History Guru. This guy is much older than Analyzer Guru, and his silky long beard almost touches the ground. He has several assistants called History Readers. They just read the version control log history for a given file and directory.
To add support for a new SCM system you need to implement your own Repository and add it to the list of known repositories in the RepositoryFactory.
-
ClassDescriptionClass to hold code shared between various cache implementations, notably
FileHistoryCache
andFileAnnotationCache
.handles parsing the output of theaccurev annotate
command into an annotation object.Parse source history for a AccuRev Repository.Access to an AccuRev repository (here an actual user workspace) AccuRev requires that a user logs into their system before it can be used.Class representing file annotation, i.e., revision and author for the last modification of each line in the file.Annotation Cache Related Operations.Holds serializable content forAnnotation
.Class representing one line in the file.BazaarAnnotationParser handles parsing the output of thebzr blame
command into an annotation object.Access to a Bazaar repository.Bazaar specific tag class with ability to compare itself with generic HistoryEntry.handles parsing the output of thebzr tags
command into a set of tag entries.handles parsing the output of thebk annotate
command into an annotation object.Access to a BitKeeper repository.BitKeeper specific tag class with ability to compare itself with generic HistoryEntry.handles parsing the output of thebk tags
command into a set of tag entries.Helper class to split sequence of VCS changesets into number of intervals.Cache interface for common cache related operations.Exception thrown when retrieval or manipulation of cache data fails.Helper functions forHistoryCache
andAnnotationCache
implementations.handles parsing the output of thecleartool annotate
command into an annotation object.Access to a ClearCase repository.handles parsing the output of thecvs annotate
command into an annotation object.Access to a CVS repository.Generate SCM history for directory by using the Index database.This class is meant to collect files that were touched in some way by SCM update.Access to a Git repository.Class representing the history of a file.Collect all information of a given revision.Exception thrown when retrieval or manipulation of history information fails.The HistoryGuru is used to implement an transparent layer to the various source control systems.Class for reading history entries in a way suitable for indexing by Lucene.Helper class for getting the latest revision of a file.Access to a Mercurial repository.Mercurial specific tag class with ability to compare itself with generic HistoryEntry.handles parsing the output of thehg tags
command into a set of tag entries.Handles handles parsing the output of themnt annotate
command into an annotation object.Access to a Monotone repository.handles parsing the output of thep4 annotate
command into an annotation object.Access to a Perforce repository.Adds access to to a Razor Repository A brief and simplistic overview of Razor Razor uses the term 'Group' for what might traditionally be called a repository, that is a collection of files and folders.Virtualize RCS log as an input stream.Access to an RCS repository.Access to a Git repository.Represents a utility to show the user details of supportedRepository
types for -h,--help.An interface for an external repository.This is a factory class for the different repositories.Class to contain the common info for a repository.Interface for finding enclosing Repository for a given Path, used by HistoryGuru.This interface allows intercepting PathUtils.getRelativeToCanonical in order to measure the impact of caching.RepositoryLookup uncached implementation (original logic taken from HistoryGuru.getRepository).Repositories extending this class will benefit from per partes history indexing which saves memory.Used by bothRazorRepository
andSCCSRepository
to retrieve revisions of a file.This class gives access to repositories built on top of SCCS (including TeamWare).handles parsing into Annotation object.Get mapping of revision to author.Access to Surround SCM repository.handles parsing the output of thesvn annotate
command into an annotation object.Access to a Subversion repository.Represents an identifier for a version control "commit" (also known as a "changeset") where the version control system uses either monotonic, linear revision numbering; or alternatively where OpenGrok uses "commit time" as a proxy for ancestry.