git branch topic-branch git checkout topic-branch # do some work, making n checkins, then clean them up using rebase git rebase -i HEAD~n git checkout master git pull --rebase upstream master git checkout topic-branch git rebase master git checkout master git merge topic-branch git push originWhen you have understood git rebase, you have understood git.
Trust me, the ease of branching makes the above insanity worthwhile. I mean, you can make a branch for every feature you're working on and they're completely lightweight. It's all about the branching, baby.
In other news, I contributed my OS X startup instructions to the OTW archive project. Next up: a bugfix or seventy.