NAME
Git::Raw::Push - Git push class
VERSION
version 0.24
SYNOPSIS
use Git::Raw;
# open the Git repository at $path
my $repo = Git::Raw::Repository -> open($path);
# add a new remote
my $remote = Git::Raw::Remote -> create($repo, 'origin', $url);
# set the acquire credentials callback
$remote -> cred_acquire(sub { Git::Raw::Cred -> plaintext($usr, $pwd) });
# connect the remote
$remote -> connect('push');
# create a push object
my $push = Git::Raw::Push -> new($remote);
# add a refspec
my $spec = "refs/heads/master:refs/heads/master";
$push -> add_refspec($spec);
# actually push and disconnect the remote
$push -> finish;
$remote -> disconnect;
# now fetch from the remote
$remote -> connect('fetch');
$remote -> download;
$remote -> update_tips;
$remote -> disconnect;
DESCRIPTION
Helper class for pushing.
WARNING: The API of this module is unstable and may change without warning (any change will be appropriately documented in the changelog).
METHODS
new( $remote )
Create a new push object.
add_refspec( $spec )
Add the $spec
refspec to the push object. Note that $spec
is a string.
finish( )
Actually push.
unpack_ok( )
Check if the remote successfully unpacked.
AUTHOR
Alessandro Ghedini <alexbio@cpan.org>
LICENSE AND COPYRIGHT
Copyright 2012 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.