Versioonihalduskeskkonnad GitHubi, GitLabi ja Bitbucketi näitel
Sissejuhatus
GitLab
GitLab Inc on USA's asuv tarkvaraettevõte, kelle peakorter asub San Franciscos. GitLab pakub tarkvaraarenduseks mõeldud erinevaid tööriistu ning pakettlahendusi, keskendudes peamiselt DevOps tarkvaraarenduse kultuurile omastele teenustele ja tootedele. [1]
Algusaastad
GitLab’i sünnihetkeks võib pidada 2011. aasta oktoobrikuud, mil GitLab’i esimene versioon päevavalgust nägi. GitLab’i loomisel kandis võtmeisiku rolli ukrainlane (inglise päraselt) Dmitriy Zaporozhets. GitLab kirjutati esialgu Ruby’s. Veidi ajas tagasi minnes võib lühidalt vaadata, millest ajendatult GitLab üldse loodi. Mõni aasta varem (2008) oli loodud GitHub, kellele GitLab on tänaseks üks peamisi konkurente. GitLab’i looja Dmitriy Zaporozhets’i töötas parajasti ettevõttes nimega Sphere Software, kus ta tihtipeale kasutas versioonihaldustööriistana GitHub’i. Probleem oli aga selles, et GitHub’i pakutavad teenused olid mõneti jäigad ning teisalt ka kallid. Dmitriy sõnul pidid nad töötama aegunud tööriistadega või ostma sisse kallihinnalisi tööriistasid, mis pärssisid nende tööd ega lasknud neil keskenduda oma põhilistele tööülesannetele. Hiljem on ta öelnud, et see oligi peamine ajend GitLab’i kui kvaliteetse ja taskukohasema tööriista loomiseks. [2]
Edulugu
Kuna GitLab oli esialgu siiski pigem hobiprojekt, mis ei toonud rahalist tulu, jätkas Dmitriy palgalist tööd, et tulla toime igapäevaste kulutustega. GitLab’i kasutajate arv kasvas ning teiste hulgas hakkas seda kasutama ka tema enda tööandja. Vaatamata mitmele katsele raha teenida, mh pakkudes tasulist support-teenust kui kogudes annetusi, ei osutunud need kuigi edukaks. Oluliseks muutuse tõi hollandlasest ettevõtja Sid Sibrangy, kel oli tekkinud huvi GitLab’i vastu ning soovis seda oma ettevõttes kasutada. Mõni aeg hiljem oli Dmitriy jõudnud oma elus etappi, kus ta soovis end täielikult pühendada GitLab’i arendamisse. Saatuse sümbolina pakkus Sid Sibrangy, et võtab ta palgaliselt tööle tingimusel, et Dmitriy aitab Sid’i tema ettevõttes. Nii läkski ja umbes aasta hiljem, 2014. aastal registreeriti GitLab ettevõttena, seejärel võeti tööle rohkem inimesi ning 2016. aastaks töötas ettevõttes juba ligi 100 inimest. Täna on GitLab’is tööl ca 1100 töötajat ning ettevõtte väärtus on hinnanguliselt 2,7 miljardit USA dollarit. Ajapikku on osa GitLab’ist ümber kirjutatud Go’s ja Vue.js’is. [3]
Litsents, lähtekoodi avalikkus
GitLab on saadaval nii tasuta kui tasulise versioonina. Community Edition on avatud lähtekoodiga ning omab (litsentsimaailmas võrdlemisi pehmet) MIT-litsentsi, mis teeb temast kasuliku, vabalt ning laialdaselt kasutatava tööriista. Samuti on saadaval tasuline Enterprise Edition, mis ei vasta kõigile avatud lähtekoodiga tarkvara tingimustele (kuigi kood on kätte saadav, mis lihtsustab trial-versiooni pakkumist) ning on mõeldud tasulise teenusena, sisaldades Community Edition’iga võrreldes enam tööriistu, tuge ning muid võimalusi.
GitLab’i dokumentatsiooni, lähtekoodi ning juhenditega on võimalik tutvuta GitLab’i koduleheküljel. [4]
GitLab teenused
GitLab pakub erinevaid teenuseid, mis on seotud tarkvara arendusega. Nende peamine toode või toodepakett on DevOps lifecycle, mis sisaldab erinevaid teenuseid alustades arenduse planeerimisest kuni toode lansseerimiseni – kõik saab teostada GitLab’i vahendusel. Kõige paremini iseloomustab GitLab’i teenuseid nende endi kodulehel paiknev kirjeldus:
„With GitLab, you get a complete CI/CD toolchain in a single application. One interface. One conversation. One permission model. Thousands of features. You'll be amazed at everything GitLab can do today. And we're just getting started.“ - GitLab.
GitLab pakub 30-päeva pikkust trial-perioodi täisversioonile, mille möödudes on võimalik edasi kasutada free-ligipääsuga teenuseid. Aleternatiivine saab osta ka tasulisi teenuseid – Bronze, Silver ja Gold-paketid, vastavalt 4$, 19$ ja 99$-kuutasuga. Teenuste paketipõhise varieeruvusega on võimalik tutvuda GitLab'i koduleheküljel. [5] Samuti on GitLab aktiivne sotsiaalmeedias, omades kontot YouTube keskkonnas [6]
Kasutajamugavus, juurutamine ja integratsioonivõimalused
GitLab on täna selgelt väiksem kui tema „suurem vend“ GitHub, kuid toodete, teenuste ja võimaluste osas on nad teinud suurepärast tööd. GitLab’i kasutajamugavus on kõrgel tasemel. Tema juurutamine ning integratsioonivõimalust tõenäoliselt paremad, kui GitHub’il. Näiteks on GitLab’il väga põhjalik dokumentatsioon selle kohta, mil viisil on võimalik kolida konkurentidest – GitHub’ist või Bitbucketist – GitLab’i platvormile. Võrdluseks – GitHub nii põhjalikku dokumentatsiooni ei paku.
GitLab’i kasutajatel on võimalik kasutada paralleelselt või koosmõjus ka teisi tööriistu, mille sarnaseid GitLab küll pakub, aga klient ei soovi osta, nt agiilses arenduses kasutatav Jira. Lisaks loovad kasutajamugavust ning pakuvad suurepärast integratsioonivõimalust erinevate plugin’ite näol - näiteks Jetbrains’i toodetele.