table of contents
| Pithub::GitData::Tags(3pm) | User Contributed Perl Documentation | Pithub::GitData::Tags(3pm) |
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 => 'schacon@gmail.com',
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": "schacon@gmail.com",
"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": "schacon@gmail.com",
"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 <plu@cpan.org>
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.
| 2025-06-08 | perl v5.40.1 |