---
title: Rebasing
tags: git,notes
---

Git rebase is mostly intended for two very specific workflows:
- Reording or editing commits in local repository prior to push
- Making your commits apply cleanly on top of an upstream HEAD.
Editing Git History `git rebase -i { branch / HEAD~n / commit }`
Pulling using rebase `git pull --rebase`
- Basically puts your non pushed commits to the top of pulled commits