NAME
Pithub::GitData::Tags - Github v3 Git Data Tags API
VERSION
version 0.01043
DESCRIPTION
This tags api only deals with tag objects - so only annotated tags, not lightweight tags.
METHODS
create
- •
-
Create a Tag
Note that creating a tag object does not create the reference that makes a tag in Git. If you want to create an annotated tag in Git, you have to do this call to create the tag object, and then create the
"refs/tags/[tag]"reference. If you want to create a lightweight tag, you simply have to create the reference - this call would be unnecessary.POST /repos/:user/:repo/git/tagsParameters:
- •
-
user: mandatory string
- •
-
repo: mandatory string
- •
-
data: mandatory hashref, having following keys:
- •
-
tag: mandatory string of the tag
- •
-
message: mandatory string of the tag message
- •
-
object: mandatory string of the SHA of the git object this is tagging
- •
-
type: mandatory string of the type of the object we're tagging. Normally this is a
"commit"but it can also be a"tree"or a"blob".
- •
-
tagger: mandatory hashref, having following keys:
- •
-
name: string of the name of the author of the tag
- •
-
email: string of the email of the author of the tag
- •
-
date: timestamp of when this commit was tagged
Examples:
my $t = Pithub::GitData::Tags->new;my $result = $t->create(user => 'plu',repo => 'Pithub',data => {tagger => {date => '2011-06-17T14:53:35-07:00',email => '[email protected]',name => 'Scott Chacon',},message => 'initial version',object => 'c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c',tag => 'v0.0.1',type => 'commit',});Response: Status: 201 Created
{"tag": "v0.0.1","sha": "940bd336248efae0f9ee5bc7b2d5c985887b16ac","url": "https://api.github.com/repos/octocat/Hello-World/git/tags/940bd336248efae0f9ee5bc7b2d5c985887b16ac","message": "initial version\n","tagger": {"name": "Scott Chacon","email": "[email protected]","date": "2011-06-17T14:53:35-07:00"},"object": {"type": "commit","sha": "c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c","url": "https://api.github.com/repos/octocat/Hello-World/git/commits/c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c"}}
get
- •
-
Get a Tag
GET /repos/:user/:repo/git/tags/:shaParameters:
- •
-
user: mandatory string
- •
-
repo: mandatory string
- •
-
sha: mandatory string
Examples:
my $t = Pithub::GitData::Tags->new;my $result = $t->get(user => 'plu',repo => 'Pithub',sha => 'df21b2660fb6',);Response: Status: 200 OK
{"tag": "v0.0.1","sha": "940bd336248efae0f9ee5bc7b2d5c985887b16ac","url": "https://api.github.com/repos/octocat/Hello-World/git/tags/940bd336248efae0f9ee5bc7b2d5c985887b16ac","message": "initial version\n","tagger": {"name": "Scott Chacon","email": "[email protected]","date": "2011-06-17T14:53:35-07:00"},"object": {"type": "commit","sha": "c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c","url": "https://api.github.com/repos/octocat/Hello-World/git/commits/c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c"}}
AUTHOR
Johannes Plunien <[email protected]>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Johannes Plunien.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.