Best Free and Open Source Alternatives to Microsoft

Best Free and Open Source Alternatives to Microsoft GitHub

Microsoft’s stance for decades was that community creation and sharing of communal code (later to be known as free and open source software) represented a direct attack on their business. Their battle with Linux stretches back many years. Back in 2001, former Microsoft CEO Steve Ballmer famously tarnished Linux “a cancer that attaches itself in an intellectual property sense to everything it touches”. Microsoft also initiated its “Get the Facts” marketing campaign from mid-2003, which specifically criticized Linux server usage, total cost of ownership, security, indemnification and reliability. The campaign was widely criticized for spreading misinformation.

However, in recent years, there has been a partial shift by Microsoft to embrace the open source software paradigm. For example, some of their code is open sourced. Examples include Visual Studio Code, .NET Framework, Atom, and PowerShell. They have also made investments in Linux development, server technology and organizations including the Linux Foundation and Open Source Initiative. They have made acquisitions such as Xamarin to help mobile app development, and GitHub a hugely popular code repository for open source developers. And they have partnered with Canonical, the developers of the popular Ubuntu distro. But many developers remain hugely sceptical about Microsoft and their apparent shift to embrace open source.

This series looks at the best free and open source alternatives to products and services offered by Microsoft. We launch the series with GitHub.

Microsoft GitHub is a provider of Internet hosting for software development and version control using Git. It offers the distributed version control and source code management (SCM) functionality of Git and offers its basic services without charge. But it is not open source which puts some organisations in a difficult position to migrate where they rely on the non-Git elements of GitHub’s service offerings. Vendor lock-in is a legitimate concern.

There are lots of alternatives to GitHub. We only recommend the best open source alternatives to GitHub in this article.


1. GitLab

GitLab

GitLab, like GitHub, offers version-control distributed git platforms used for storing your code inside git repositories.

GitLab is essentially a comprehensive DevOps platform. It has a mature built-in CI/CD framework, the combined practices of continuous integration and either continuous delivery or continuous deployment. Combine that with code and project management tools, issue reporting, and more, it makes it easy to manage, plan, create, verify, package, secure, release, configure, monitor and defend projects.

Self-host GitLab on your own servers, in a container, or on a cloud provider.

GitLab is published under an open source license.


2. Gitolite

We’re big fans of self-hosting. And storing your code inside your own locally hosted git repository makes a lot of sense. Make sure your backup strategy is sound!

We are also big fans of Gitolite. It lets you setup git hosting on a central server, with fine-grained access control and many more powerful features. Manage a Git server with Git.

While you’ll need to learn how to use Gitolite, this involves simple editing of text files in a Git repository. And the project’s documentation is excellent.


3. Gitea

We also love Gitea as a self-hosted Git service. This is a community managed lightweight code hosting solution written in Go. It aims to offer the simplest way to set up a self-hosted Git service.

Gitea is cross-platform, easy to install, lightweight and published under an open source license (MIT).


4. Gogs

If Gitolite or Gitea don’t float your boat, we also recommend Gogs. It shares many similarities with Gitea (Gitea is a fork of Gogs).


All articles in this series:

Alternatives to Microsoft's Products and Services
GitHubDistributed version control and source code management functionality of Git
OneNoteNote-taking program for free-form information gathering and collaboration
ProjectDevelop schedules, assign resource, track progress, manage budget +
YammerSocial-networking platform for organizations

Ongoing series
Linux for StartersNew to Linux? Read our Linux for Starters series.
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Supplied with our legendary ratings charts.
Linux ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software.
Alternatives to GoogleAlternatives to Google's Products and Services examines your options to migrate from the Google ecosystem with open source Linux alternatives.
MicrosoftAlternatives to Microsoft's Products and Services recommends open source Linux software.
Linux System ToolsEssential Linux system tools looks at small, indispensable utilities, useful for system administrators as well as regular users.
Linux ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
Home Computer EmulatorsHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy opens up to the lighter side of Linux. Have some fun!
Best Free Android AppsBest Free Android Apps. There's a strict eligibility criteria for inclusion in this series
Programming BooksThese best free books accelerate your learning of every programming language
Programming TutorialsThese free tutorials offer the perfect tonic to the free programming books series
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA
Share this article

6 comments

  1. There really wasn’t a big migration from GitHub to GitLab when Microsoft purchased GitHub.

    Microsoft are determined to be a good custodian of GitHub, they paid $7.5 billion in Microsoft stock for it!

    1. From the open source projects I’ve looked at, the vast majority are still on GitHub rather than GitLab. Why is that? Why is GitHub still way more popular? Inertia?

  2. I use codeberg, until now it has been more than enough for my needs, and it’s slowly getting more support.

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.