.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" 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 .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . 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::Reference 3pm" .TH Git::Raw::Reference 3pm "2019-01-12" "perl v5.28.1" "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::Reference \- Git reference class .SH "VERSION" .IX Header "VERSION" version 0.79 .SH "DESCRIPTION" .IX Header "DESCRIPTION" A Git::Raw::Reference represents a Git reference. .PP \&\fB\s-1WARNING\s0\fR: The \s-1API\s0 of this module is unstable and may change without warning (any change will be appropriately documented in the changelog). .SH "METHODS" .IX Header "METHODS" .SS "annotated_commit( )" .IX Subsection "annotated_commit( )" Create a Git::Raw::AnnotatedCommit from the reference. .ie n .SS "lookup( $name, $repo )" .el .SS "lookup( \f(CW$name\fP, \f(CW$repo\fP )" .IX Subsection "lookup( $name, $repo )" Retrieve the reference with name \f(CW$name\fR in \f(CW$repo\fR. .ie n .SS "create( $name, $repo, $object [, $force, $symbolic] )" .el .SS "create( \f(CW$name\fP, \f(CW$repo\fP, \f(CW$object\fP [, \f(CW$force\fP, \f(CW$symbolic\fP] )" .IX Subsection "create( $name, $repo, $object [, $force, $symbolic] )" Creates and returns a new reference named \f(CW$name\fR in \f(CW$repo\fR pointing to \f(CW$object\fR. \f(CW$object\fR can be a Git::Raw::Blob, Git::Raw::Commit, or a Git::Raw::Tree object. If \f(CW$force\fR is a truthy value, any existing reference is overwritten. If \f(CW$force\fR is falsy (the default) and a reference named \f(CW$name\fR already exists, an error is thrown. If \f(CW$symbolic\fR is a truthy value, then a symbolic reference is created. If \f(CW$symbolic\fR is falsy (the default), then a direct reference is created. If \f(CW$symbolic\fR is a truthy value, then \f(CW$object\fR can be a Git::Raw::Reference or a string. .SS "delete( )" .IX Subsection "delete( )" Delete the reference. The Git::Raw::Reference object must not be accessed afterwards. .SS "name( )" .IX Subsection "name( )" Retrieve the name of the reference. .SS "shorthand( )" .IX Subsection "shorthand( )" Get the reference's short name. This will transform the reference name into a \&\*(L"human-readable\*(R" version. If no shortname is appropriate, it will return the full name. .SS "type( )" .IX Subsection "type( )" Retrieve the type of the reference. Can be either \f(CW"direct"\fR or \f(CW"symbolic"\fR. .SS "target( [$new_target] )" .IX Subsection "target( [$new_target] )" Retrieve the target of the reference. If the \f(CW$new_target\fR parameter of type Git::Raw::Reference is passed, the reference will be changed to point to it. .PP Note that updating the target will invalidate all existing handles to the reference. .PP This function returns either an object (Git::Raw::Blob, Git::Raw::Commit, Git::Raw::Tag or Git::Raw::Tree) for direct references, or another reference for symbolic references. .ie n .SS "peel( $type )" .el .SS "peel( \f(CW$type\fP )" .IX Subsection "peel( $type )" Recursively peel the reference until an object of the specified \f(CW$type\fR is found. Valid values for \f(CW$type\fR include: \f(CW"commit"\fR, \f(CW"tree"\fR or \f(CW"tag"\fR. .SS "reflog( )" .IX Subsection "reflog( )" Retrieve the Git::Raw::Reflog of the reference. Shortcut for \&\f(CW\*(C`Git::Raw::Reflog\->open()\*(C'\fR. .SS "owner( )" .IX Subsection "owner( )" Retrieve the Git::Raw::Repository owning the reference. .SS "is_branch( )" .IX Subsection "is_branch( )" Check if the reference is a branch. .SS "is_remote( )" .IX Subsection "is_remote( )" Check if the reference is remote. .SS "is_tag( )" .IX Subsection "is_tag( )" Check if the reference lives in the \f(CW\*(C`refs/tags\*(C'\fR namespace. .SS "is_note( )" .IX Subsection "is_note( )" Check if the reference lives in the \f(CW\*(C`refs/notes\*(C'\fR namespace. .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 \s-1GNU\s0 General Public License as published by the Free Software Foundation; or the Artistic License. .PP See http://dev.perl.org/licenses/ for more information.