What does a git rebase do?

What does a git rebase do?