Nieuws

Github versus Gitlab (en waarom we de voorkeur geven aan GitLab)

— GitLab is een zogenaamde tool voor het beheren van opslagplaatsen. Je gebruikt dit bij softwareontwikkeling, Gitlab ondersteunt de hele DevOps-cyclus. Ontwikkelingsteams die software bouwen, kunnen nauwelijks zonder zo'n tool, omdat ze cruciaal zijn voor een succesvolle en snelle ontwikkeling.

Maarten

Maarten

CEO

Tekst van de badge
Github versus Gitlab (en waarom we de voorkeur geven aan GitLab)

GitLab is niet de enige speler die zo'n tool voor het beheer van opslagplaatsen aanbiedt. Een andere belangrijke speler is GitHub. Bij het zoeken naar de beste platforms voor opslagplaatsbeheer vergelijken veel ontwikkelaars de twee populairste aanbieders van deze service: GitHub en GitLab.

We werken met GitLab en we hebben daar niet per ongeluk voor gekozen. Benieuwd waarom? In dit artikel leggen we de belangrijkste verschillen uit tussen GitLab en GitHub, en waarom we voor GitLab hebben gekozen. Op basis van de vergelijking die we maken, hopen we dat u ook een keuze kunt maken die aansluit bij uw behoeften.

Wat is GitHub?

Laten we beginnen met een korte uitleg van GitHub. GitHub is het oudste van de twee platforms. Het programma werd gelanceerd in 2008 en is momenteel het grootste in termen van gebruikersbestand. GitHub promoot en ondersteunt het hosten van open-source code, maar het is geen volledig open-source platform.

De meeste projecten die in GitHub zijn gebouwd, zijn openbaar toegankelijk, maar het is ook mogelijk om een repository privé te houden. Deze optie is gratis voor maximaal 3 medewerkers, maar daarnaast is een betaald teamabonnement vereist. Prijzen beginnen bij $4 per gebruiker en kunnen oplopen tot $21.

In 2018 werd aangekondigd dat Microsoft GitHub zou overnemen voor $7,5 miljard (ongeveer €6,4 miljard). Niet alle gebruikers waren tevreden met dit nieuws, omdat sommige ontwikkelaars vreesden dat met de techgigant aan boord de focus van GitHub op gebruikersbehoeften zou afnemen.

Wat is GitLab?

In onze vorige blogpost hebben we het gehad over wat is GitLab in detail. GitLab werd later gelanceerd dan GitHub, in 2011. Sindsdien wint het steeds meer aan populariteit, vooral onder ontwikkelaars en liefhebbers van open source. De 'Community Edition' van GitLab is volledig open source, waardoor ontwikkelaars actief kunnen bijdragen aan het verbeteren van de functies.

In tegenstelling tot GitHub legt GitLab geen beperkingen op aan het aantal gebruikers in privéomgevingen voor projecten. Met het „Gratis abonnement” van GiLab kun je helemaal gratis beginnen.

Natuurlijk moet je kiezen voor een betaald account als je bepaalde extra functies wilt gebruiken, zoals het toekennen van een 'gewicht' aan een probleem of het selecteren van meerdere personen om een codebeoordeling goed te keuren.

Toen het nieuws over de overname van GitHub door Microsoft naar buiten kwam, besloten veel ontwikkelaars hun projecten te migreren naar andere platforms, voornamelijk GitLab.

Een vergelijking tussen GitHub en GitLab

De belangrijkste overeenkomsten

We zijn grote fans van GitLab en hebben natuurlijk bewust voor dit platform gekozen. Maar dat betekent niet dat het kiezen van GitHub een slechte keuze is. Het aanbod van beide bedrijven is redelijk vergelijkbaar en de kernfuncties voor het bouwen van succesvolle softwareproducten zijn in beide diensten geïntegreerd. Veel functionaliteiten die worden aangeboden door GitLab en GitHub zijn vrij gelijkaardig:

  • Pull-aanvragen aanmaken: teamleden op de hoogte stellen van wijzigingen in de repository
  • Integraties met externe tools, zoals Slack
  • De mogelijkheid om repositories te forken of te klonen
  • Code beoordelingen
  • Codefragmenten: kleine delen van de broncode maken en hergebruiken
  • Probleemopsporing

De belangrijkste verschillen

Continue integratie/continue levering

Een van de grootste verschillen tussen GitLab en GitHub is de ingebouwde Continuous Integration/Delivery-functionaliteit in GitLab. Met Continuous Integration (CI) wordt de code van het team geïntegreerd in een gedeelde opslagplaats. Ontwikkelaars pushen nieuwe code via een Merge (Pull) -aanvraag, die vervolgens een pijplijn activeert om de nieuwe code te bouwen, te testen en te valideren voordat er wijzigingen in de repository worden aangebracht.

Met Continuous Delivery (CD) wordt de door CI gevalideerde code in de toepassing geïmplementeerd.

GitLab biedt CI gratis, wat betekent dat er geen externe CI-service nodig is. Als je echter al een externe CI-tool gebruikt, kun je deze eenvoudig integreren met GitLab.

GitHub had deze functie aanvankelijk niet, maar ze hebben onlangs GitHub-acties geïntroduceerd. Met deze toevoeging kunnen GitHub-gebruikers nu CI/CD-functionaliteiten gebruiken.

GitLab biedt in dit opzicht echter een bredere en robuustere set tools. Voor eenvoudige ontwikkelingsprojecten werkt GitHub Actions goed, maar naarmate projecten complexer worden, biedt GitLab een meer geïntegreerde oplossing.

De GitHub/GitLab-community

GitHub werd ongelooflijk populair, mede vanwege de grote gemeenschap van actieve ontwikkelaars. GitLab heeft dit ook omarmd door GitLab-evenementen en -bijeenkomsten te organiseren om zijn open source-ontwikkelaars met elkaar te verbinden.

Als een grote gemeenschap van ontwikkelaars belangrijk voor je is, is GitHub waarschijnlijk de betere keuze, ook al werkt het jongere GitLab hard om zijn stempel te drukken.

Hosting

GitHub wordt voornamelijk gehost in de cloud (hoewel zelfhosting met GitHub Enterprise mogelijk is), terwijl GitLab zowel opties voor zelfhosting als cloudhosting biedt. Dit is met name handig voor organisaties die hun hosting willen afstemmen op hun eigen infrastructuur en de volledige controle over hun systemen willen behouden.

Onze keuze

Op het eerste gezicht lijken GitHub en GitLab niet veel van elkaar te verschillen. Beide programma's hebben de kernfunctionaliteiten die nodig zijn voor een goede tool voor het beheer van opslagplaatsen.

GitHub is nog steeds het populairste programma als het gaat om gebruikersbestand en projecten. Maar voor ons is de belangrijkste factor dat GitLab zo goed luistert naar de behoeften van zijn gebruikers. Ze verbeteren hun software voortdurend en ondernemen daadwerkelijk actie op basis van suggesties van gebruikers. Over het algemeen vinden we het programma gebruiksvriendelijker. Bovendien biedt het nog een paar functies die belangrijk zijn voor het succesvol ontwikkelen van software, zoals ingebouwde CI/CD-integratie.

Om deze redenen zijn we enthousiast over GitLab. Wat is jouw mening? Welk platform heeft jouw voorkeur?

Maarten

Maarten

CEO

GitlabHost-logo

Ready to create your own GitLab instance

Safe & Secure
GDPR Compliant
Expert help