Git bisect (2006)
yarchive.net
yarchive.net
Of course, now I'm open to a reply that demonstrates that it isn't a joke but makes perfect sense and that I'm clueless and overconfident... :)
TL;DR - Merging is powerful, but comes with a cost. - Rebase is your friend. Keep it simple.
In my earlier projects when I thought rebasing was evil, it was always because I was abusing aspects of the history that only made everything harder for myself.
(though then again there's surely a million different ways to use a tool like Git, this is all just in my experience)
I have an alias that's like "git log --oneline --pretty" and a couple other options that I can't remember that gives me the flat graph of history. Digesting that is so much more comfortable, and also makes it significantly easier to understand where I'm at when I'm branching about for feature work.