Sunday, June 3, 2018

Top 5 free GitHub alternatives in 2018

Now that Microsoft has acquired GitHub, many are looking to move their code to some other hosting platform. But, what are some good free alternatives to GitHub in 2018?


Check out the official statements of GitHub CEO Chris Wanstrath and Microsoft CEO Satya Nadella on the acquisition.

1. Bitbucket

Developed by Atlassian, Bitbucket is second only to GitHub in terms of popularity. Bitbucket is free for individuals and small organizations (at most 5 members) and allows for unlimited public and private repositories. Atlassian also has its own Git and Mercurial client Source Tree, which is available for free on Windows and Mac. Like GitHub, Bitbucket lets you host a website for free at accountname.bitbucket.org and project pages at accountname.bitbucket.org/project. Other features include an issue tracking system, importing of existing repos, and Mercurial support.

Pros:
  • Free unlimited private repos for small teams (5 members or less)
  • Native application for both Mac and Windows (SourceTree)
  • Integrated issue/tickets management system
Cons:
  • Not as stable as GitHub
  • Requires registration of a "universal Atlassian account"

2. GitLab

GitLab is a free and open-source alternative to GitHub (licensed under MIT). Gitlab is very close to Github in use and feel, written in Ruby on Rails, open source and hosted on Github as well as on GitLab.com. GitLab is being constantly worked on and has a new release every month on the 22nd (simply update via apt-get). Apart from that, GitLab is pretty much at feature parity with GitHub, providing pull requests, wiki pages, protected branches, issue tracking, merge conflict resolution, and much more.

On the other hand, not all features are free. In addition, there is no Windows support (will require virtual machine).

How to migrate from GitHub to GitLab: Check out this YouTube video.

Pros:
  • Free and open source (licensed under MIT)
  • Very close to GitHub in use and feel, with nearly all GitHub features
  • Clean and intuitive UI
Cons:
  • Not all features are free
  • No Windows support
  • No Mercurial or Subversion support

Note: You might be interested to know that the cloud provider GitLab currently relies on is—you guessed it—Microsoft. However, GitLab is in the process of migrating from Microsoft Azure to Google Cloud. It is also possible to run GitLab on your own server.


3. RhodeCode

RhodeCode is a free open-source alternative to GitHub. It can be installed on your own machine, which gives high security and isolated environment for your code. RhodeCode supports Mercurial, Git and Subversion in a unified way that allows you to do code-reviews and other stuff on each of them. User management is centralized around administrators which can give granular permissions to individual users or user groups/. These permissions can be related to allowing contributions, editing, or simply giving read-only access to users. On the other hand, poor documentation makes it rather difficult to troubleshoot a problem when something goes wrong.

Pros:
  • Free and open source
  • Supports Mecurial, Git, and Subversion
  • Best in class permission system
Cons:
  • Hard to maintain and upgrade

4. LaunchPad

LaunchPad is another free GitHub alternative that is built to be used for open-source projects. LaunchPad provides a bug tracker with sophisticated statistics (total number of bugs, number of bugs fixed, etc.) as well as a build system for easy deployment. On Ubuntu, users merely need to add your PPA to their sources.list, and their good to go. Deployment doesn't get easier than this.

LaunchPad's UI, on the other hand, is rather weak. While other platforms such as GitHub provide an easy, simplistic UI to help developers browse code right through the browser, there is no easy way to do this on LaunchPad. In addition, most projects on LaunchPad have poor (if any) documentation, making it hard to determine the quality of a project.

Pros:
  • Free and open source
  • Integrated build/deployment system
  • Great bug tracking features
Cons:
  • Hard-to-use web interface

5. SourceForge

I guess another option is to go back to SourceForge. Despite the ads overload and its creepy past, SourceForge still provides integrated issue tracking, threaded discussion formus, web-based code browsing, and many other features. Scripting languages like Python, Perl, PHP, Tcl, Ruby and Shell are being supported by the SourceForge servers. Users are free to choosing either Git, Subversion or Mercurial for the version control system.

Pros:
  • Free and open source
  • Code review and bug tracking
  • Supports Mercurial, Git, and Subversion
Cons:
  • For open-source projects only
  • Ads, ads everywhere

Do-It-Yourself Services

If you don't mind hosting yourself, then there are a few services you may want to consider:

  • Gogs: a lightweight self-hosting service for Git. Runs on Windows, Linux, ARM—and therefore even runs on a Raspberry Pi!
  • Gitea: a community managed fork of Gogs, written in Go, published under the MIT license.

Paid Services

In addition, if you don't mind paying a subscription fee for your source code hosting platform, then you might also be interested in the following:

  • Beanstalk: Subversion and Git support, free 2-week trial, after that $15/month. The "Bronze" package allows up to 5 users, 3 GB of storage, and a maximum of 10 repos.
  • CloudForge: Subversion and Git support, free 30-day trial, after that $2/user/month. The standard package allows for unlimited public and private repos, and 2 GB of storage. Several features such as reporting metrics, deployment via CloudForge Publisher, and custom domains require additional fees.
  • CodeBase: Mercurial, Git, and Subversion support, free 2-week trial, 9£/month. The free plan gives you one project, 100 MB disk space, and 2 users. The Hobbyist Plan allows up to 10 users, 6 active projects, unlimited archived projects, and 4 GB of storage.
  • Codeplane: Git support, free 30-day trial, after that $9/month. Suitable for small companies and freelancing teams.
  • Kiln: Git and Mercurial support, free 30-day trial, after that $18/month. You will need to pay separately for the Code Review module. Best suited for medium to large organizations (100-500 people).