NAME
Git::Raw::Reflog - Git reflog class
VERSION
version 0.90
SYNOPSIS
use
Git::Raw;
# open the Git repository at $path
my
$repo
= Git::Raw::Repository ->
open
(
$path
);
# get the master branch
my
$master
= Git::Raw::Branch -> lookup(
$repo
,
'master'
, 1);
# retrieve the reflog for 'master'
my
$reflog
=
$master
-> reflog;
# print out reflog information
my
@entries
=
$reflog
-> entries;
foreach
my
$entry
(
@entries
) {
my
$committer
=
$entry
-> committer;
"Committer:"
,
"\n"
;
"\t"
,
"Name: "
,
$committer
-> name,
"\n"
;
"\t"
,
"E-Mail "
,
$committer
-> email,
"\n"
;
"\t"
,
"Time: "
,
$committer
->
time
,
"\n"
;
"\t"
,
"Offset: "
,
$committer
-> offset,
"\n"
;
"\n"
;
"Message: "
,
$entry
-> message,
"\n"
;
"Old id: "
,
$entry
-> old_id,
"\n"
;
"New id: "
,
$entry
-> new_id,
"\n"
;
}
# add a new entry to the reflog
my
$signature
= Git::Raw::Signature ->
default
(
$repo
);
$reflog
-> append(
"Hello"
,
$signature
);
$reflog
->
write
;
# drop an entry from the reflog
$reflog
-> drop(0);
$reflog
->
write
;
# remove the reflog
$reflog
->
delete
;
$reflog
->
write
;
DESCRIPTION
A Git::Raw::Reflog
represents a Git reflog.
WARNING: The API of this module is unstable and may change without warning (any change will be appropriately documented in the changelog).
METHODS
open( $reference )
Open the reflog for the reference $reference
.
delete( )
Delete the reflog for the reference.
append( $message [, $signature])
Add a new entry to the reflog. If $signature
is not provided, the default signature, Git::Raw::Signature->default()
will be used.
drop( $index )
Remove entry $index
from the reflog.
write( )
Write the reflog back to disk.
entry_count( )
Retrieve the number of entries in the reflog.
entries( [$index, $count] )
Retrieve a list of Git::Raw::Reflog::Entry objects.
AUTHOR
Alessandro Ghedini <alexbio@cpan.org>
Jacques Germishuys <jacquesg@cpan.org>
LICENSE AND COPYRIGHT
Copyright 2014 Alessandro Ghedini.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.