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.
In addition to
new, we implement the following constructor(s):
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:
An arrayref of
The VCI::Abstract::Project that the resulting History should be associated with.
VCI::Abstract::Historythat has a union of all the commits in all of the supplied histories.
All accessors are read-only.
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.
What Project this History came from.