De vigtigste forskelle mellem GitHub og GitLab

0
197

Steven Vaughan-Nichols Skrevet af Steven Vaughan-Nichols, Senior Contributing Editor Steven Vaughan-Nichols Steven Vaughan-Nichols Senior Contributing Editor

Steven J. Vaughan-Nichols, aka sjvn, har skrevet om teknologi og teknologiens forretning, siden CP/M-80 var det banebrydende pc-operativsystem; 300bps var en hurtig internetforbindelse; WordStar var den nyeste tekstbehandler; og vi kunne lide det.

Fuld biografi Udgivet i Linux og Open Source den 8. marts 2022 | Emne: Enterprise Software

Mange mennesker spørger mig: “Hvilket distribueret versionskontrolsystem skal jeg bruge til mit programmeringsprojekt, GitHub eller GitLab?” Det er ikke så enkelt et spørgsmål. Lad os bryde det ned, skal vi?

For det første, har du overhovedet brug for et distribueret versionskontrolsystem (VCS)? En VCS's (alias et Source Code Management (SCM) system) job er at gøre det nemt for flere udviklere, designere og teammedlemmer at arbejde sammen om det samme projekt. Det sikrer, at alle har samme adgang til den seneste kode, og ændringer spores.

Mens begge understøtter open source, bruger lagrene selv en blandet programmeringsmodel. GitLab brugte en open-core forretningstilgang. I denne model forbliver GitLab Community Edition gratis og open source, mens GitLab Enterprise Edition har flere funktioner og kommer med support. Hvad angår GitHub, selvom dens kode indeholder noget open source-kode, er det ikke et open source-projekt.

Stadig, grundlæggende tilbyder begge webbaserede depoter med open source, Git-baseret kodestyring og lokale filændringer med et fjernlager. Hvis alt, hvad du ønsker, er grundlæggende Git-funktionalitet, men med en anden til at bekymre sig om at holde Git oppe at køre, vil begge tjenester gøre det godt for dig.

Nogle mennesker kan selvfølgelig stadig ikke lide GitHub, fordi Microsoft købte den i 2018. For nogle vil Microsoft altid være The Evil Empire, uanset hvor meget Microsoft viser, at det nu understøtter open source-metoder og software – eller hvor ofte Microsofts CEO Satya Nadella siger, at han elsker Linux. Når det er sagt, har det aldrig været så stor en faktor. Mens nogle brugere flygtede fra GitHub for GitLab og Atlassian BitBucket på det tidspunkt, var det aldrig den masseudvandring, nogle havde forventet.

Når det er sagt, er GitHub helt klart gorillaen på 800 pund i VCS-verdenen. Ifølge programmeringsværktøjsfirmaet JetBrains bruger 77 % af udviklerne GitHub regelmæssigt sammenlignet med 40 % til GitLab og 25 % til BitBucket.

Også: GitHub muliggør to- faktorgodkendelsesmekanisme gennem iOS, Android-app

Kerneforskellen er, at GitLab har Continuous Integration/Continuous Delivery (CI/CD) og DevOps-arbejdsgange indbygget. GitHub lader dig arbejde med CI/CD-værktøjerne efter eget valg, men du skal selv integrere dem. Typisk arbejder GitHub-brugere med et tredjeparts CI-program såsom Jenkins, CircleCI eller TravisCI.

En anden vigtig forskel er, at GitHub sætter hastigheden først, mens GitLab fokuserer på pålidelighed.

GitHub går specifikt ind for at fusionere nye filialer med mastergrenen. På den måde er du allerede klar til hurtigt at implementere, mens du også hurtigt genindsætter din gamle version, hvis noget går galt.

I GitLabs workflow opretter du flere stabile grene ud over masteren. Som minimum vil du have produktions- og præproduktionsstabile afdelinger. Det betyder, at du skal gennemgå en testproces i flere trin. En enkelt kodegennemgang ved fletteanmodningen er ikke nok.

Selvfølgelig kan du få begge dele til at virke, som du vil, men der er en klar forskel i den foretrukne tilgang.

Microsoft | Sky | Big Data Analytics | Innovation | Teknik og arbejde | Samarbejde