After living in abject fear of ClearCase rebases and merges across version branches for the past few months, something like this makes me drool:

Git’s rebase allows you to temporarily rewind the commits you did in this branch, pull in everything from another branch and apply your commits on top of that again [...] It’s as if you didn’t start working in the feature/login branch before the commits you pulled in were made. Nice, huh?
Jeff Kreeftmeijer