While GitHub's uptime has improved immensely, it was a serious problem. It's not as simple as pushing your repo someplace else when you use submodules. If anyone has a fix for that I'd love to hear it. I've ceased using submodules in most cases precisely because GitHub used to go down so frequently, but now I have the same problem with anything that's a :git entry in my Gemfile.
One workaround for submodules would be local DNS entries, i.e. edit /etc/hosts to make github.com the temporary local github.com. Also, I generally mirror submodule repos and use those. But neither of these "solutions" fixes the actual issue of course. Not using submodules sounds like the best solution to me :)