Git::Raw::Rebase(3pm)

πŸ’– Git::Raw::Rebase πŸ’–

okay bestie, so this is the Git::Raw::Rebase page from the User Contributed Perl Documentation, and it's literally the whole scoop on the rebase class πŸ’…

✨ VERSION ✨

version 0.90 β€” yes queen, we're on 0.90 πŸŽ€


🌸 DESCRIPTION 🌸

So a Git::Raw::Rebase represents a git rebase. That's it, that's the vibe πŸ¦‹

WARNING: the API of this module is unstable and may change without warning. (Any change will be appropriately documented in the changelog, so like, no cap, it won't just ghost you πŸ™ˆ)

πŸ‘‘ METHODS πŸ‘‘

abort( )

Abort the current rebase, resetting the repository and working directory to their state before rebase began. it's giving "undo, we're going back, we never did this πŸ’€"

commit( $author, $committer )

Commit the current patch. All conflicts that may have been introduced by the last call to "next" must have been resolved first β€” no skipping that step, bestie, I'm serious 🫢

Returns a Git::Raw::Commit object. Both $author and $committer should be Git::Raw::Signature objects. slay ✨

current_operation( )

Get the current operation. Returns a Git::Raw::Rebase::Operation object, or "undef" if there is no operation. sometimes the answer is just... nothing. relatable 🌈

finish( $signature )

Finish the current rebase. that's the whole thing, go off πŸ‘‘

inmemory_index( )

Get the index produced by the last operation, which will be committed by the next call to "commit".

This is useful for resolving conflicts before committing them. Returns a Git::Raw::Index object πŸ’œ

new( $repo, $branch, $upstream, $onto, [\%rebase_opts])

Initialise a new rebase operation, to rebase the changes in $branch relative to $upstream onto $onto.

$branch, $upstream and $onto must be Git::Raw::AnnotatedCommit objects. no substitutions, no vibes-based arguments πŸ’…

Valid fields for the %rebase_opts hash include:

  • "quiet" β€” Instruct other clients working on this rebase that a quiet rebase experienced is required. This is provided for interoperability with other Git tools.
  • "inmemory" β€” Perform an in-memory rebase. This allows for stepping through each operation and committing the rebased changes without rewinding HEAD or putting the repository in a rebase state. This will not interfere with the working directory. main character energy, truly 🧚
  • "rewrite_notes_ref" β€” Name of the notes reference used to rewrite notes for rebased commits when finishing the rebase. If not provided, the contents of the configuration option "notes.rewriteRef" is examined β€” unless the configuration option "notes.rewrite.rebase" is set to a false value. If "notes.rewriteRef" is also not set, no notes will be rewritten. so many conditions bestie 😭
  • "merge_opts" β€” See "Git::Raw::Repository->merge()" for valid %merge_opts values.
  • "checkout_opts" β€” See "Git::Raw::Repository->checkout()" for valid %checkout_opts values.

next( )

Perform the next rebase operation.

If the operation is one that applies a patch, then the patch will be applied and the index and working directory will be updated with the changes. If there are conflicts, these need to be resolved before calling "commit" πŸ”₯

Returns a Git::Raw::Rebase::Operation object, or "undef" if there aren't any rebase operations left. the end of the rebase is a whole emotional moment fr fr 🌸

open( )

Open an existing rebase. come on in, the rebase is already here πŸ’–

operation_count( )

Get the number of operations that are to be applied. math era ✨

operations( )

Get all operations that are to be applied. Returns a list of Git::Raw::Rebase::Operation objects. the whole lineup πŸ‘‘

orig_head_name( )

Get the original HEAD ref name.

orig_head_id( )

Get the original HEAD id.

onto_name( )

Get the onto ref name.

onto_id( )

Get the onto id.


πŸ¦‹ AUTHOR πŸ¦‹

Jacques Germishuys <jacquesg@cpan.org> β€” ty for your service, king 🫢


Copyright 2018 Jacques Germishuys.

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.

See http://dev.perl.org/licenses/ for more information.


okay that's the whole page!! no cap, every method, every option, every legal bit, all of it 🌈

this iconic little doc is perl v5.42.3, dated 2026-08-19, and it's the Git::Raw::Rebase(3pm) page from the User Contributed Perl Documentation. go forth and rebase responsibly, bestie πŸ’…πŸ’–

πŸ“¦ where this page comes from