Love rebasing, love merging, squash or no squash, it all depends on what I'm trying to communicate with my pushes.
Just discovered the --rebase-merges option, worth exploring if you want to edit a commit under a merge commit, but don't want to mess up the merge commits.