Blog

GitHub vs GitLab

2 most popular repositories in the world – comparison 2022

If you are using Git for version control, you have several repositories that you can use: GitHub, GitLab, Bitbucket, or Azure DevOps for this. In this post, you can find a comparison of the two most popular of them GitHub and GitLab, and answer the question of which is the better choice for your project.

I've been hoping I'll find the best comparison on the official websites GitHub and GitLab. Unfortunately, only GitLab has a small "comparison challenge".

So, in this post, you can find a comparison based on features, ready integrations, community, UX and UI, Pricing, and customers.

Common features:

  • two-factor authentication
  • public repositories free
  • access to the on-premise version
  • issue tracking

A few facts:

GitHub is the most popular VCS service in the world, with the largest user community and the largest projects, such as Git or the Linux kernel. A link to GitHub in your CV or portfolio with interesting projects will definitely help you in looking for a programmer job.

In addition to the version control system itself, we find here a static website hosting service - GitHub Pages, also available from the repository. With a little perseverance and reading a good guide, you can even set up your blog with Pages

  • started in 2007
  • acquired by Microsoft in 2018
  • used by around 3 000 000 organizations
  • more than 100 000 000 repositories have been created in 2020
  • written in Ruby, Go and Vue.js

GitLab is the smaller of the services shown. Personally, I like the minimalism of the interface about it. Just like BitBucket, it offers an unlimited number of private repositories for free, however, the maximum storage capacity is 10 GB. Nice additions are the ability to add changelog files and instructions for the community on how to make a contribution from the repo home page and CI (continuous integration) settings.

  • started in 2011 as an open-source project
  • joined Y Combinator in 2015
  • used by around 100 000 organizations
  • a community of 3000 + code contributors

Integrations

GitHub provides ready-made integration with over 350 external vendor applications and almost 7,000 ready-made actions (workflows), which certainly improve the work of programmers.

https://github.com/marketplace?type=actions

Unfortunately, GitLab can not boast of such a rich number of integrations, where we can use only about 40 ready-made integrations. This is demonstrated by the GitHub platform approach, which is open to many external solutions. The marketplace from GitHub is definitely a big advantage.

https://docs.gitlab.com/ee/user/project/integrations/overview.html

Pricing:

Pricing from both providers is very similar. The same free version available for developers and pricing for Team in both cases started from 4$ per user monthly. A little more expensive is GitHub in Enterprise cost – 21$ vs 19$ from GitLab - is not a huge difference.

The biggest disparity is in the highest plan – GitLab offers this version at 99$ per user monthly, GitHub hid this price on the website. Hoewer, we checked a many dev forums and find information that GitHub Enterprise costs $2,500 per 10 users per year. Packages can only be purchased in seats of ten, so even if you only have 11 team members, you'll be paying the same as if you had 20. Bitbucket Server is priced in tiers like its Cloud counterpart, with a 2,000 user maximum

Customers:

Naturally, GitHub has more users but here we consider only enterprise customers. But in this case, also GitHub ahead of competitors because it is using by 72% of companies from Fortune 50!

Window.js - open-source Javascript runtime for desktop graphics programming

Window.js is an open-source Javascript runtime for desktop graphics programming.

It provides APIs for window creation and manipulation via GLFW and the HTML5 Canvas API via the Skia graphics library, backed by the v8 Javascript engine.Window.js comes with familiar APIs for web developers for input event handling and animated rendering, and has additional, convenient APIs for file access.

Additional APIs for sound, networking and WebGL are planned for a future release.

Window.js is a very recent project and hasn’t been widely tested yet. Please report any issues and get in contact for help.

Quick start

Window.js is distributed as a single binary that can be downloaded for Windows and macOS.It can also be built from the sources for Windows, macOS and Linux.

Window.js runs a Javascript source file directly:

$ windowjs examples/breakout.js

The source files can be edited and reloaded with F5 in the main window.

A Javascript console is available by pressing F1, that can be used to diagnose errors and explore the APIs. For example, submitting this:

window.title = "Hello!"

changes the title of the main window. Errors are highlighted in the main window:

window.title = noSuchVariable;

Uncaught exceptions and console log errors are also shown in the main window. That overlay can be toggled with F4. See help() in the console for more development tools.

Examples

There are a few example applications in the examples directory of the Window.js checkout from the Github repository.

Breakout

A simple Breakout clone, that was ported from an older HTML5 version.

Use the left and right arrows to move and space to start, or use the mouse and click to start.

$ out/src/windowjs.exe examples/breakout.js

Press F2 to see the FPS and memory usage counters and F5 to reload.

Pressing the digits 1 to 6 skips ahead to the corresponding level.

Sokoban

A simple Sokoban clone.

$ out/src/windowjs.exe examples/sokoban.js
Tetris

A simple Tetris clone.

$ out/src/windowjs.exe examples/tetris.js

Add your team to Team Finder