There are many self-hosted source code repositories out there, but which one is right for you?
Looking For the Right Self-Hosted Solution
You may have many reasons to implement a self-hosted solution, and depending on what you’re looking for you may have pretty limited options (Git + Mercurial support sure narrows it down to two for me for some solutions). We’re going to review quite a few systems that revolve around the two popular DVCS systems, Mercurial and Git (I may add other version control systems if people are interested enough and the revision control systems are non-proprietary or I can get my hands on a trial), check back or subscribe for updates!
Why Self-hosted?
Self-hosting comes with a range of benefits, including but not limited to:
- Faster response times due to being on a local network with less resource contention.
- Security of source code behind a firewall on a private network.
- Tighter integration with your internal authentication systems (ex: LDAP, or the Atlassian stack).
- Typically cheaper than a cloud solution.
What I Look for in a Self-Hosted Solution
I work on a variety of projects, from open-source to closed-source and proprietary, code for myself, code for companies, code for the community. I need a place to store all of this code in a safe manner and backup to some cloud solution (and RhodeCode has been good for this in the past), I want a place I can delegate access to companies that want access to their repositories, or a consultant they have come in and make a minor change or wants to review something I did. All while staying cost effective. Hosted solutions cannot work for me due to the high costs of onboarding 3rd parties (and what do I do when they no longer need access? I’m stuck paying a seat).
Some positives include fork management, organization control and LDAP integration.
Self-hosted Solutions
Product | Source Available | Cost | Free Use? | Language | Review Available |
RhodeCode | Yes | ~$5/user/mo | For <= 25 users | Python | Review |
Kallithea | Yes | Free | Yes | Python | Planned |
GitLab | Yes | Free | Yes | Ruby | Planned |
Gogs | Yes | Free | Yes | Go | Review |
Stash | Yes | Tiered pricing | No | Java | Planned |
Github Enterprise | No | $21/user/month | No | Ruby | No |
Cloud Based Solutions
Throughout reviews we’ll refer to some cloud based solutions, their features and their pricing, here is a list of some popular ones:
Product | Price | Free Public Repos? | Free Private Repos? |
Github | ~$1/repo/month | Yes | No |
BitBucket | $1/user/month | Yes | Yes – Up to 5 users |
What We’ll Be Evaluating
- Product functionality (both the basics needed for source control management and beyond)
- Repository systems supported
- Integration with existing infrastructure
- Ease of use
- Ease of administration
- Community resources
- Pricing schemes
Missing a Solution?
Please leave a comment!