For those who are not aware, GitHub is a popular web-based hosting service for source code and development projects that allows developers to use the tools of the privately-held company to store code, change, adapt and improve software from its public repositories for free. GitHub users have a choice of using either Git or Subversion as their VCS (Version Control System), to manage, maintain and deploy software projects. It has more than 28 million developers already collaborating on the platform and are working on more than 85 million repositories of code. While Microsoft has assured that GitHub will continue to operate independently and will remain an open platform after the acquisition, open source developers are not hopeful and may look for an alternate place. In this article, we provide you top 5 GitHub alternatives to host your open-source project: GitLab is a free and open source project licensed under MIT that is very close to GitHub in use and feel. However, GitLab sacrifices the ease of use of GitHub for more privacy, security and serving speed. One if its unique features are that you can install GitLab onto your own server.
GitLab’s UI is clean and intuitive and also claims to handle large files and repositories better than GitHub. It supports issue tracker, group milestones, moving of issues between projects, configurable issue boards and group issues, and more. It also supports powerful branching tools and protected branches and tags, time tracking, custom notifications, issues weights, merge requests, file locking, project roadmaps, confidential and related issues, burn down charts for project and group milestones. GitLab also allows users to have unlimited public AND private repos for free. It is being used by Stack Overflow, IBM, AT&T, Microsoft, and more. GitLab consists of three versions: Community Edition, Enterprise Edition Starter, and Enterprise Edition Premium, where each version can have different features. It is recommended to understand your needs first before selecting a certain edition. Owned by Atlassian, Bitbucket is second only to GitHub in terms of popularity and usage. It is a web-based version control repository hosting service for source code and development projects. However, it also supports the Mercurial VCS as well as Git, whereas GitHub only supports Git and Subversion. It is available on Windows and Mac for free.
Bitbucket offers free accounts with an unlimited number of private repositories for individuals and organizations (which can have up to five users or lesser but can be increased by selecting a paid plan). Bitbucket allows you to push files using any Git client, or the Git command line. Bitbucket can also be controlled through its web interface. It also offers amazing support for Git Large File Storage (LFS) for game development. BitBucket integrates and communicates well with JIRA, Bamboo, and HipChat, who are a part of the Atlassian software family. It also offers features such as code reviews, Bitbucket pipelines, code search, pull requests, flexible deployment models, diff view, smart mirroring, issue tracking, IP whitelisting, an unlimited private repos, commit history and branch permissions for safeguarding your workflow. Depending on your security needs, Bitbucket deploys in the cloud, on a local server, or your company’s data center.
Some of the popular projects hosted on Launchpad include Ubuntu Linux, MySQL, OpenStack, Terminator and more. SourceForge is a web-based service that offers software developers a centralized online location to control and manage free and open-source software projects. It was the first to offer this service for free to open-source projects.
SourceForge provides a source code repository, bug tracking, mirroring of downloads for load balancing, a wiki for documentation, developer and user mailing lists, user-support forums, user-written reviews and ratings, a news bulletin, micro-blog for publishing project updates, and other features. SourceForge hosts lots of open-source Linux, Windows, Mac, Apache OpenOffice, FileZilla projects, and lots more. SourceForge servers support for PHP, Perl, Python, Tcl, Ruby, and shell scripts. You can upload to Sourceforge through an SFTP client. It offers you the option of using Git, Subversion (SVN) and Mercurial (Hg) as your project’s VCS on SourceForge. GitBucket is an open source, highly pluggable Git platform that runs on JVM (Java Virtual Machine). It comes with features such as Public / Private Git repositories (with http/https and ssh access), GitLFS support, a repository viewer, issues, pull requests and wiki for repositories, activity timeline and email notifications, account and group management with LDAP integration, and a plug-in system to extend its core features.