Although I do not like this word, this is the place to use it: GitHub services are not “Enterprise” level. There is a gigantic git repositories collection against a huge user space. If you switch to a paid account, you can mark some of your repositories “private” and limit access to them for a subset of users exists in the system. There is no user level security, no network protection, no extra service continuity options and/or an actual SLA. You need to trust implicitly to your users, and you need to know some good prayers against network and system problems.
Edit in 2021 to this 2016 summary:
Github is developing and improving its service quality and tools on offer for a better environment. In the time between my original writing and this update there have been improvements and changes. Maybe not the most important but definitely most dramatic one of those is the acquisition of Github by Microsoft. Given the current stance of Microsoft, I personally view this development as a positive one. Also it seems that, most of improvements in the service occurred after this ownership change. All these being said, I still do not see Github services as enterprise level. So the the answer to the first question (that is about private repos…) stay the same. For any FOSS and similarly “need to be out there in the open” project however, Github became an excellent platform.