Your own private github.
After that we tried Gitorious (back then it was still an unholy nightmare to install) before finally landing on Gitlab. Gitlab isn't perfect, sometimes the ruby process likes to eat gigs of memory and has to be restarted (we have very large repos)...
But Gitlab has a great trajectory, every release is a great step up and I find the multiple branches working mode more natural than the multiple repos method that github has...
Github support has been variable, but generally good for us. The switch to a VM was touchy at first, but once we gave it enough horsepower, things were fine.
In order to preserve the integrity of the appliance and ensure that it remains in a consistent state, we have these limitations in place:
- Root access is not provided. - The admin user password is not provided. - Installation and execution of third party software is not permitted. - Modification of the underlying VM configuration is not permitted.
Bypassing any of these limitations will void all warranties and may put your installation in an unsupportable state.
I still can't even limit access to it using an ldap group. If someone works for the company, then they can access it. Totally unacceptable for a product that licenses based on numbers of seats.
Atlassian Stash was released five months ago for Enterprise teams adopting Git behind the firewall. Stash is installed on your servers and gives you full control of your Git environment - security, user management (LDAP), infrastructure support and pull requests.
Also: don't get me wrong, i love Github and what it's doing for our opensource culture, but like everything else, sometimes there're other requirements.