Git’s rebase command can be puzzling for newcomers, and its description in the manpage doesn’t offer much clarity: git-rebase – Forward-port local commits to the updated upstream head Not exactly beginner-friendly, right? Thankfully, Travis Swicegood provides a more relatable metaphor: Imagine a cleaver. Rebase acts like this cleaver, slicing and dicing commits however you see fit and placing them