NAME
Net::GitHub::V2::Repositories - GitHub Repositories API
SYNOPSIS
use Net::GitHub::V2::Repositories;
my $repos = Net::GitHub::V2::Repositories->new(
owner => 'fayland', repo => 'perl-net-github'
);
DESCRIPTION
http://develop.github.com/p/repo.html
For those (authentication required) below, you must set login and token (in https://github.com/account
my $repos = Net::GitHub::V2::Repositories->new(
owner => 'fayland', repo => 'perl-net-github',
login => 'fayland', token => '54b5197d7f92f52abc5c7149b313cf51', # faked
);
METHODS
- search
-
my $results = $repos->search('net-github');
Search Repositories
- show
-
my $repos_in_detail = $repos->show(); # show the owner+repo in ->new my $repos_in_detail = $repos->show('fayland', 'foorum'); # another
To look at more in-depth information for a repository
- list
-
my $repositories = $repos->list(); # show the owner in ->new my $repositories = $repos->list('nothingmuch');
list out all the repositories for a user
- watch
- unwatch
-
$repos->watch(); $repos->unwatch();
watch and unwatch repositories (authentication required)
- fork
-
$repos->fork();
fork a repository (authentication required)
- create
-
my $rep = $repos->create( $name, $desc, $homepage, $is_public );
create a new repository (authentication required). $name are required. like 'perl-net-github'
- delete
-
$repos->delete(); # just return delete_token $repos->delete( { confirm => 1 } ); # delete the repository
delete a repository (authentication required)
- update
-
$organization->update( description => 'Linux kernel rewritten in Visual Basic', has_wiki => 0, has_issues => 1, has_downloads => 0);
change repository metadata.
- set_private
- set_public
-
$repos->set_private(); $repos->set_public();
set a public repository private or make a private repo public (authentication required)
- deploy_keys
- add_deploy_key
- remove_deploy_key
-
$repos->add_deploy_key( 'title', $key ); my $pub_keys = $repos->deploy_keys(); $repos->remove_deploy_key( $pub_keys->[0]->{id} );
list, add and remove your deploy keys (authentication required)
- collaborators
- add_collaborator
- remove_collaborator
-
my $collaborators = $repos->collaborators(); $repos->add_collaborator( 'steven' ); $repos->remove_collaborator( 'steven' );
list, add and remove the collaborators on your project (authentication required)
- network
-
my $network = $repos->network();
- languages
-
List the languages used in a particular repository. Values are in bytes calculated.
my $languages = $repos->languages();
-
my $tags = $repos->tags();
- branches
-
my $branches = $repos->branches();
AUTHOR
Fayland Lam, <fayland at gmail.com>
COPYRIGHT & LICENSE
Copyright 2009 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.