---
name: "Git::Repository::Plugin::Log"
section: "3pm"
platform: "linux"
package: "libgit-repository-plugin-log-perl"
version: "1.314-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Git::Repository::Plugin::Log"
---

# Git::Repository::Plugin::Log(3pm)

Add a log() method to Git::Repository

## NAME

Git::Repository::Plugin::Log - Add a log() method to Git::Repository

## SYNOPSIS

```
    # load the plugin
    use Git::Repository 'Log';
    my $r = Git::Repository->new();
    # get all log objects
    my @logs = $r->log(qw( --since=yesterday ));
    # get an iterator
    my $iter = $r->log(qw( --since=yesterday ));
    while ( my $log = $iter->next() ) {
        ...;
    }
```

## DESCRIPTION

This module adds a new method to Git::Repository.

## METHOD

### log

```
   # iterator
   my $iter = $r->log( @args );
   # all Git::Repository::Log objects obtained from the log
   my @logs = $r->log( @args );
```

Run `"git log"` with the given arguments.

In scalar context, returns a Git::Repository::Log::Iterator object, which can return Git::Repository::Log objects on demand.

In list context, returns the full list Git::Repository::Log objects. Note that this can be very memory-intensive.

See Git::Repository::Log::Iterator's documentation for details about how parameters are handled.

## ACKNOWLEDGEMENTS

Many thanks to Aristotle Pagaltzis who requested a `"log()"` method in the first place, and for very interesting conversations on the topic.

## SEE ALSO

Git::Repository::Plugin, Git::Repository::Log::Iterator, Git::Repository::Log.

## COPYRIGHT

Copyright 2010-2016 Philippe Bruhat (BooK), all rights reserved.

## LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
