Git::Repository::Log - Class representing git log data
# load the Log plugin use Git::Repository 'Log'; # get the log for last commit my ($log) = Git::Repository->log( '-1' ); # get the author's email print my $email = $log->author_email;
Git::Repository::Log is a class whose instances represent log items from a git log stream.
This method shouldn't be used directly. Git::Repository::Log::Iterator should be the preferred way to create
Create a new
Git::Repository::Log instance, using the list of key/values passed as parameters. The supported keys are (from the output of
git log --pretty=raw):
The commit id (ignoring the extra information added by --decorate).
The tree id.
The parent list, separated by spaces.
The author information.
The committer information.
The log message (including the 4-space indent normally output by git log).
The commit signature.
The mergetag information.
The commit from which the diff was taken.
This is the extra
from information on the commit header that is added by git when the log contains a diff (using the
--name-status option). In this case,
git log may show the same commit several times.
Any extra text that might be added by extra options passed to git log (e.g.
Note that since
git tag --pretty=raw does not provide the
encoding header (and provides the message properly decoded), this information will not be available via Git::Repository::Plugin::Log.
The following accessors methods are recognized. They all return scalars, except for
parent(), which returns a list.
The original author/committer line
The log message with the 4-space indent output by git log.
The unindented version of the log message.
Copyright 2010-2016 Philippe Bruhat (BooK), all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.