VCI::Abstract::History - The history of a Project, File, Directory, etc.
Essentially, this represents all of the commits to a particular file, project, directory, or anything that can be committed.
All accessors are read-only.
commits
An arrayref of VCI::Abstract::Commit objects. This represents a series of commits to some particular item, such as a file, a directory, or an entire Project. It will always be in time order--earliest commits will be first, more recent commits will be last.
Note that depending on how the History was generated, and depending on the version-control system in use, what is listed in each commit may or may not represent the whole commit. That is, if this is the History of a File, each Commit might only contain information about that particular File, and not other Files or Directories that were committed at that time.
The most complete History possible will be generated by "history" in VCI::Abstract::Project.
project
What Project this History came from.
In addition to new, we implement the following constructor(s):
new
union
Given a list of History objects, returns an object that is a union of all of them. (This is useful for implementing "contents_history" in VCI::Abstract::FileContainer.)
Takes the following named parameters, both of which are required:
histories
An arrayref of VCI::Abstract::History objects.
VCI::Abstract::History
The VCI::Abstract::Project that the resulting History should be associated with.
A VCI::Abstract::History that has a union of all the commits in all of the supplied histories.
Usually you won't construct an instance of this class directly, but instead, ask for this History of a Project or Committable.
Takes all "Accessors" of this class as named parameters. The following fields are required: "commits" and "project".
To install VCI, copy and paste the appropriate command in to your terminal.
cpanm
cpanm VCI
CPAN shell
perl -MCPAN -e shell install VCI
For more information on module installation, please visit the detailed CPAN module installation guide.