This module works in one of two ways. By default, a new document is output for each commit in the repository. These output documents have the metadata documented below to describe each commit. In this mode, all input documents are forgotten and only documents for each commit are output.
Alternatively, by calling
ForEachInputDocument(), commit data is added to every input document
for which the repository contains an entry. The data is added as an
IDocument sequence to the
specified metadata key in the input document and each document in the sequence contains the same
metadata that would have been added in the default mode. All input documents are output from this module
(including those that didn't have commit information).
Gets commits from the repository the
InputFolderis a part of.
Gets commits from the repository the specified path is a part of.
The repository path.
Chain these methods together after the constructor to modify behavior.
ForEachInputDocument(string commitsMetadataKey = null)
Specifies that commit information should be added to each input document.
The metadata key to set for commit information.
The metadata values listed below apply to individual documents and are created and set by the module as indicated in their descriptions.
The email of the author.
The name of the author.
The date of the author signature.
The sequence of commits for the input document if
ForEachInputDocument()was called (and an alternate metadata key was not provided).
The email of the committer.
The name of the committer.
The date of the committer signature.
All commit entries. The key is the path of the file and the value is the status of the file within the commit.
The commit message.
The SHA of every parent commit.
The SHA of the commit.