.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Git::Raw::Tag 3pm" .TH Git::Raw::Tag 3pm 2024-03-07 "perl v5.38.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Git::Raw::Tag \- Git tag class .SH VERSION .IX Header "VERSION" version 0.90 .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 1 \& use Git::Raw; \& \& # open the Git repository at $path \& my $repo = Git::Raw::Repository \-> open($path); \& \& # retrieve user\*(Aqs name and email from the Git configuration \& my $config = $repo \-> config; \& my $name = $config \-> str(\*(Aquser.name\*(Aq); \& my $email = $config \-> str(\*(Aquser.email\*(Aq); \& \& # create a new Git signature \& my $me = Git::Raw::Signature \-> now($name, $email); \& \& # create a new tag \& my $tag = $repo \-> tag( \& \*(Aqv0.1\*(Aq, \*(AqInitial version\*(Aq, $me, $repo \-> head \-> target \& ); .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" A Git::Raw::Tag represents an annotated Git tag. .PP \&\fBWARNING\fR: The API of this module is unstable and may change without warning (any change will be appropriately documented in the changelog). .SH METHODS .IX Header "METHODS" .ie n .SS "create( $repo, $name, $msg, $tagger, $target )" .el .SS "create( \f(CW$repo\fP, \f(CW$name\fP, \f(CW$msg\fP, \f(CW$tagger\fP, \f(CW$target\fP )" .IX Subsection "create( $repo, $name, $msg, $tagger, $target )" Create a new annotated tag given a name, a message, a Git::Raw::Signature representing the tagger and a target object. .ie n .SS "lookup( $repo, $id )" .el .SS "lookup( \f(CW$repo\fP, \f(CW$id\fP )" .IX Subsection "lookup( $repo, $id )" Retrieve the tag corresponding to \f(CW$id\fR. This function is pretty much the same as \f(CW\*(C`$repo\->lookup($id)\*(C'\fR except that it only returns tags. If the tag doesn't exist, this function will return \f(CW\*(C`undef\*(C'\fR. .SS "owner( )" .IX Subsection "owner( )" Retrieve the Git::Raw::Repository owning the tag. .ie n .SS "foreach( $repo, $callback, [$type] )" .el .SS "foreach( \f(CW$repo\fP, \f(CW$callback\fP, [$type] )" .IX Subsection "foreach( $repo, $callback, [$type] )" Run \f(CW$callback\fR for every tag in the repo. The callback receives a tag object, which will either a be a Git::Raw::Tag object for annotated tags, or a Git::Raw::Reference for lightweight tags. \f(CW$type\fR may be \f(CW"all"\fR, \&\f(CW"annotated"\fR or \f(CW"lightweight"\fR. If \f(CW$type\fR is not specified or is \f(CW\*(C`undef\*(C'\fR, all tags will be returned. A non-zero return value stops the loop. .SS "delete( )" .IX Subsection "delete( )" Delete the tag. The Git::Raw::Tag object must not be accessed afterwards. .SS "id( )" .IX Subsection "id( )" Retrieve the id of the tag, as a string. .SS "name( )" .IX Subsection "name( )" Retrieve the name of the tag. .SS "message( )" .IX Subsection "message( )" Retrieve the message of the tag. .SS "tagger( )" .IX Subsection "tagger( )" Retrieve the Git::Raw::Signature representing the tag's tagger. If there is no tagger, \f(CW\*(C`undef\*(C'\fR will be returned. .SS "target( )" .IX Subsection "target( )" Retrieve the target object of the tag. .SH AUTHOR .IX Header "AUTHOR" Alessandro Ghedini .PP Jacques Germishuys .SH "LICENSE AND COPYRIGHT" .IX Header "LICENSE AND COPYRIGHT" Copyright 2012 Alessandro Ghedini. .PP 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. .PP See http://dev.perl.org/licenses/ for more information.