I use both BitBucket and GitHub. The major differences are that BitBucket uses mercurial and GitHub uses git although BitBucket also supports git. Where they really differ is in their pricing model. BitBucket charges per user and GitHub charges per project(relatively speaking).
So you have to watch the tipping point as your projects cross the boundary. Or you have to open source your projects. Or you have to spend some money. Or you have to run multiple DVCS configs.
Personally I’m moving everything to GitHub. The tipping point for me is the desktop GUI and the online code editing. I have an idea about an application harness that would make online development plausible(for another day).