NAME
Git::Raw::Push - Git push class
VERSION
version 0.25
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
-> callbacks({
credentials
=>
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.