Skip to content

fayland/perl-net-github

Repository files navigation

Build Status Actions Status Actions Status

NAME

Net::GitHub - Perl Interface for github.com

SYNOPSIS

use Net::GitHub;

my $github = Net::GitHub->new(  # Net::GitHub::V3
    login => 'fayland', pass => 'secret'
);

# If you use two factor authentication you can pass in the OTP. Do
# note that OTPs expire quickly and you will need to generate an oauth
# token to do anything non-trivial.
my $github = Net::GitHub->new(
    login =>   'fayland',
    pass =>    'secret',
    otp =>     '123456',
);

# Pass api_url for GitHub Enterprise installations. Do not include a
# trailing slash
my $github = Net::GitHub->new(  # Net::GitHub::V3
    login =>   'fayland',
    pass =>    'secret',
    api_url => 'https://gits.aresweet.com/api/v3'
);

# suggested
# use OAuth to create token with user/pass
my $github = Net::GitHub->new(  # Net::GitHub::V3
    access_token => $token
);

# L<Net::GitHub::V3::Users>
my $user = $github->user->show('nothingmuch');
$github->user->update( bio => 'Just Another Perl Programmer' );

# L<Net::GitHub::V3::Repos>
my @repos = $github->repos->list;
my $rp = $github->repos->create( {
    "name" => "Hello-World",
    "description" => "This is your first repo",
    "homepage" => "https://github.com"
} );

DESCRIPTION

http://github.com is a popular git host.

This distribution provides easy methods to access GitHub via their APIs.

Check http://developer.github.com/ for more details of the GitHub APIs.

Read Net::GitHub::V3 for API usage.

Read Net::GitHub::V4 for GitHub GraphQL API.

If you prefer object oriented way, Pithub is 'There is more than one way to do it'.

FAQ

  • create access_token for Non-Web Application

    my $gh = Net::GitHub::V3->new( login => 'fayland', pass => 'secret' );
    my $oauth = $gh->oauth;
    my $o = $oauth->create_authorization( {
        scopes => ['user', 'public_repo', 'repo', 'gist'], # just ['public_repo']
        note   => 'test purpose',
    } );
    print $o->{token};

    after create the token, you can use it without your password publicly written

    my $github = Net::GitHub->new(
        access_token => $token, # from above
    );

Git

http://github.com/fayland/perl-net-github/

SEE ALSO

Pithub

AUTHOR

Fayland Lam, <fayland at gmail.com>

Everyone who is listed in Changes.

COPYRIGHT & LICENSE

Copyright 2009-2012 Fayland Lam all rights reserved.

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

About

Perl interface to GitHub

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 44

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy