.\" 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::Stash 3pm" .TH Git::Raw::Stash 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::Stash \- Git stash class .SH "VERSION" .IX Header "VERSION" version 0.79 .SH "DESCRIPTION" .IX Header "DESCRIPTION" Helper class to manage stashes. .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" .ie n .SS "apply( $repo, $index, [\e%stash_apply_opts] )" .el .SS "apply( \f(CW$repo\fP, \f(CW$index\fP, [\e%stash_apply_opts] )" .IX Subsection "apply( $repo, $index, [%stash_apply_opts] )" Apply a single stashed state from the stash list. If local changes in the working directory conflict with changes in the stash this function will throw a \&\f(CW\*(C`Git::Raw::Error\*(C'\fR exception with a \f(CW\*(C`Git::Raw::Error::EMERGECONFLICT\*(C'\fR error code. If you are restoring untracked files or ignored files and there is a conflict when applying the modified files, then those files will remain in the working directory. Valid fields for \f(CW%stash_apply_opts\fR include: .IP "\(bu" 4 \&\*(L"checkout_opts\*(R" .Sp See \f(CW\*(C`Git::Raw::Repository\->checkout()\*(C'\fR. .IP "\(bu" 4 \&\*(L"flags\*(R" .RS 4 .IP "\(bu" 8 \&\*(L"reinstate_index\*(R" .Sp Try to reinstate not only the working tree's changes, but also the index's changes. .RE .RS 4 .RE .IP "\(bu" 4 \&\*(L"callbacks\*(R" .RS 4 .IP "\(bu" 8 \&\*(L"apply_progress\*(R" .Sp Progress notification function. The callback receives a single \f(CW$progress\fR value which may be any constant provided by \f(CW\*(C`Git::Raw::Stash::Progress\*(C'\fR. .RE .RS 4 .RE .ie n .SS "pop( $repo, $index, [\e%stash_apply_opts] )" .el .SS "pop( \f(CW$repo\fP, \f(CW$index\fP, [\e%stash_apply_opts] )" .IX Subsection "pop( $repo, $index, [%stash_apply_opts] )" Apply a single stashed state from the stash list and remove it from the list if successful. .ie n .SS "save( $repo, $stasher, $msg [, \e@opts] )" .el .SS "save( \f(CW$repo\fP, \f(CW$stasher\fP, \f(CW$msg\fP [, \e@opts] )" .IX Subsection "save( $repo, $stasher, $msg [, @opts] )" Save the local modifications to a new stash. Non-default options may be specified by providing the optional \f(CW@opts\fR argument. If files were stashed, this function will return a Git::Raw::Commit object, otherwise \f(CW\*(C`undef\*(C'\fR. .PP Valid fields for the \f(CW@opts\fR array are: .IP "\(bu" 4 \&\*(L"keep_index\*(R" .Sp All changes already added to the index are left intact in the working directory. The default is to also stash changes in the index. .IP "\(bu" 4 \&\*(L"include_untracked\*(R" .Sp All untracked files are also stashed and then cleaned up from the working directory. The default is to leave untracked files in the working directory. .IP "\(bu" 4 \&\*(L"include_ignored\*(R" .Sp All ignored files are also stashed and then cleaned up up from the working directory. The default is to leave ignored files in the working directory. .ie n .SS "foreach( $repo, $callback )" .el .SS "foreach( \f(CW$repo\fP, \f(CW$callback\fP )" .IX Subsection "foreach( $repo, $callback )" Run \f(CW$callback\fR for every stash in the repo. The callback receives three arguments: the stash \f(CW$index\fR, the stash \f(CW$message\fR and the stash \f(CW$commit\fR, a Git::Raw::Commit object. A non-zero return value will stop the loop. .ie n .SS "drop( $repo, $index )" .el .SS "drop( \f(CW$repo\fP, \f(CW$index\fP )" .IX Subsection "drop( $repo, $index )" Remove a single stash from the stash list. .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.