What is GitHub?

GitHub code on a dark background
(Image credit: Shutterstock)

GitHub is an online hosting service for software projects created using the open source version control system Git.

When software developers create a program, app or browser extension, they constantly make changes to the code, releasing new versions up to and after the first stable release. Version-control systems such as Git store these revisions in a central repository, which allows other developers to collaborate on the project and make and share their own changes. Think of it as a Google Docs for developers.

In June Microsoft announced it had agreed to acquire GitHub in a deal thought to be worth $7.5 billion, sparking concerns that the decision would threaten the platform's ability to operate independently.

So what's the point of GitHub?

Whereas Git is a command-line tool, which non-developers may find completely baffling, GitHub provides a web-based graphical interface that makes it easier to collaborate on projects through repositories, which serve as online folders for projects, and offers lots of useful features of its own.

Chief among these is 'forking', which allows you to modify somebody else's project and share the changes you've made. You can then notify the original developer via a 'pull request', and they can optionally merge your modifications with their original repository.

But what's in it for non-developers?

Well, as we explain in this feature, GitHub is an excellent place to download cutting-edge free software that you won't find elsewhere. The site, which celebrated its 10th birthday earlier this year, now hosts more than 85 million repositories from some 28 million developers, and its open-source ethos means anyone can access most of these projects.

So I can download loads of free programs?

Yes and no. GitHub repositories host source code rather than traditional downloads, and many projects aren't intended to evolve into completed programs, but to provide building blocks for other developers to use.

How to download from GitHub

GitHub repositories can look intimidating to non-developers, with their lists of individual elements and ZIP-file downloads that require Git to open and run their contents. Fortunately, if you want to download software as an 'end user' rather than contribute to its development, you can usually find a more traditional download.

Sometimes, developers provide a link to an EXE file further down the page but if not, click the Releases tab above the list of elements to view and download the latest stable version of the software for your operating system. It's also possible the developer may link to their own website, where their completed program(s) will be available to download, or have a presence on GitHub Pages, which provides a much friendlier way to present GitHub projects.

We also recommend the Chrome extension GitHub Plus, which adds clear download links and file sizes to repositories (and is, of course, available on GitHub itself!).