Misbrands : GitHub and GitLab
This third entry in our misbrands series will be about GitHub and GitLab, two famous code hosting (and other) services based on the Git SCM. This parodied version combine the GitHub name, written with the correct brand’s font, but associated with GitLab’s logo and with the same trademark layout. GitHub and GitLab are both competitors in the “DevOps platform” market by providing source code hosting services, Continuous Integration pipelines and runners, and Artifacts hosting.
GitLab
The GitLab Logo, license CC BY-SA-NC 4.0.
The GitLab name refers to two things. First, it’s a software, GitLab Community Edition and Entreprise Edition. The second is the name of the company behind its development, GitLab Inc. The company was founded around the same time as the development of GitLab began.
GitLab was created in 2011 by Ukrainian developer Dmitriy Zaporozhets and Dutch developer Sytse Sijbrandij. It started as a source code repository and evolved progressively into a suite that covers the software development life cycle (code hosting, artifact hosting, build and deployment workflow). GitLab refers its product as “The DevOps platform”.
At first, GitLab was just one tool that anybody could host and use, distributed as a Free and Open Source software release under the MIT License. In 2013, the project announced a split into two distinct versions : GitLab Community Edition and GitLab Enterprise Edition. Both suites are distributed under MIT license and can be self-hosted by the customer. However, in 2014, GitLab Enterprise Edition changed its licensing model to proprietary with sources publicly available, also with the issue tracker and merge tracker. The Enterprise Edition also contains features that are not available in Community Edition. So, despite being a proprietary software, GitLab EE is still developed like an Open Source one.
GitLab is also a Software as a Service that offers mainly the same functionalities, with limitations regarding the subscription plan : Source code hosting for Git, issue tracking, merge request workflows, collaborative development, project management tools, CI/CD pipelines, release management, Wiki, etc. The service also features a lot of security-oriented tool like Dynamic and Static code analysis, license compliance, vulnerability scan, etc. According to the official website, GitLab is used by more than 100 000 organizations.
The GitLab logo is a tanuki, a Japanese raccoon dog that have a special place in their folklore. GitLab explains its choice because “The tanuki is fast, efficient, and collaborative. Itβs thought to symbolize trustworthiness, agility, and preparedness. Known for its transformational powers and collaborative nature, the tanuki works with others to achieve a common goal, a behavior also exhibited by the GitLab community”.
I must admit I’ve never really used GitLab. At first, I’ve installed it to have my own Git repositories self-hosted, but it’s a kind of overkill for just git repos. And the maintenance was complicated when you don’t follow the release management. I don’t know if today it’s simpler. Back on this time, I’ve replaced GitLab with Gitea. But I don’t use it anymore too because I don’t have a lot of interest in hosting my own repo. I know that GitLab is very advanced in CI workflows and the good old Jenkins is more and more shadowed by this competitor according to various DevOps communities. I haven’t had the opportunity to use them yet, so I can’t really tell.
GitHub
The GitHub logo, Β© GitHub Inc.
The development of the GitHub platform began in 2007, and the service was officially launched in 2008. GitHub Inc. was a startup company launched by Tom Preston-Werner, Chris Wanstrath, P. J. Hyett and Scott Chacon. As November 2021, GitHub was the largest source code host.
One of the interesting fact about the GitHub foundation was the flat organization, with self-management (“everyone is a manager”) and employees that could choose on project they wanted to work on. However, this organization has its limitations and various harassements claims made the company change its organization to install middle management.
Unlike GitLab, GitHub is only a Software as a Service website and cannot be freely self hosted. In 2009, GitHub announced they accumulated over 46 000 public repositories and the site was used by 100 000 users. In 2010, GitHub was hosting 1 million repositories and surpasses SourceForge and Google Code the same year. From 2012, Microsoft became significant user of GitHub by using it to host its open-source softwares (.NET Core, Powershell, Visual Studio Code…). In 2011, GitHub Enterprise was launched, allowing paying customers to host a self-managed version of the GitHub service, with similar functionality. The source code of GitHub Enterprise is closed, but was leaked in 2020 as an apparent protest against the youtube-dl repository take down.
And six years later, in line with Satya Nadella’s strategy to move Microsoft into a Cloud service provider, the company announced its intention to acquire GitHub. This announcement provoked some fears and concerns and the competitors were interested : GitLab, Bitbucket, or SourceForge seen new users intending to migrate their repositories away from GitHub. One of the main concern was the bad treatment on previous Microsoft purchases like Nokia or Skype. The deal closed on October 2018 and GitHub continued to operate independently as a stand alone service. It’s billing model changed to adapt with the competitors like GitLab. Instead of paying private repositories, these type of repositories are now unlimited for a user and can have up to three collaborators. Finally, in 2020, GitHub announced that all GitHub core features were now freely available for every users and the paid subscriptions allows to have more usage capabilities or dedicated features.
GitHub services are the following ones : source code hosting, issue tracking, project management, pull request, social networking features (feeds, follows), wikis, social network graphs, static website hosting, artifact hosting, CI pipelines, etc. They also develop AI-powered tools like GitHub Copilot that is supposed to learn about coding practice and helps developers to produce code by just looking at the docstring, comment or function. This feature is regularly mocked by the coders communities because sometimes the results are not really smart.
The Octocat, Β© GitHub Inc
The GitHub Mascot is the Octocat, an anthropomorphize cross-breed between a cat and an octopus. The character was created by Simon Oxley as a clipart to sell on iStock. GitHub was interested by this character for their logo, but the iStock license could not permit it. After negotiations, the company was able to buy the character rights from Oxley and trademarked it into the “Octocat”. Various variations of the characters were made by GitHub’s hired illustrator, Cameron McEfee, and are available on a dedicated website : The Octodex.
Despite trying to avoid the big techs companies, I’m mainly using GitHub for sharing my various things. I’ve also more experience with this service as I also have to use it in professional context. From my perspective, GitHub was a kind of late on CI/CD tooling and their “GitHub Actions” service is still young but improve progressively. I can’t say I’m a big fan of them because of the idea of a marketplace with community-developed “Actions” that have the same risks as Jenkins’ plugin library : being dependent of something that could be not anymore maintained tomorrow. I think I’ll write about GitHub Actions one day, as I have some years of experience with Jenkins it could be a nice comparison.