NAME
Git::Repository::Log - Class representing git log data
VERSION
version 1.305
SYNOPSIS
# 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;
DESCRIPTION
Git::Repository::Log is a class whose instances reprensent log items from a git log stream.
CONSTRUCTOR
This method shouldn't be used directly. Git::Repository::Log::Iterator should be the preferred way to create Git::Repository::Log objects.
new( @args )
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
):
- commit
-
The commit id (ignoring the extra information added by --decorate).
- tree
-
The tree id.
- parent
-
The parent list, separated by spaces.
-
The author information.
- committer
-
The committer information.
- message
-
The log message (including the 4-space indent normally output by git log).
- gpgsig
-
The commit signature.
- mergetag
-
The mergetag information.
- extra
-
Any extra text that might be added by extra options passed to git log.
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.
ACCESSORS
The following accessors methods are recognized. They all return scalars, except for parent()
, which returns a list.
Commit information
- commit
- tree
- parent
Author and committer information
- committer
-
The original author/committer line
- committer_name
- committer_email
Date information
- committer_gmtime
- committer_localtime
- committer_tz
Log information
- raw_message
-
The log message with the 4-space indent output by git log.
- message
-
The unindented version of the log message.
- subject
- body
Signature-related information
- gpgsig
- mergetag
Extra information
- extra
AUTHOR
Philippe Bruhat (BooK) <book@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Philippe Bruhat (BooK).
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.