Exactly this. It's painful to realize that Git was invented to solve this very problem, but so many use GitHub as their source control server just like CVS and all the other old source control systems.
Tried to prototype on XMPP at one point in college but never got very far in the prototype.
(That was back when I was a heavy darcs proponent too and had other crazy things like automated consensus branching as a great distributed way to coordinate efforts on such a distributed project, which would work with the darcs push/pull/merge model but not so well in git's.)