# Interactive Rebasing

```bash
git rebase -i <branch>
```

* Enables more precise control over the rebased commits
* Before committing many actions are at disposal

```bash
#  p, pick = use commit
#  r, reword = use commit, but edit the commit message
#  e, edit = use commit, but stop for amending
#  s, squash = use commit, but meld into previous commit
#  f, fixup = like "squash", but discard this commit's log message
#  x, exec = run command (the rest of the line) using shell
```