V tem članku vam predstavljamo pregled 5 najboljših alternativ GitHub, ki jih gostite sami, da vam pomagajo pridobiti nadzor nad svojo kodo in morda pridobiti dostop do uporabnih funkcij, za katere sploh niste vedeli, da obstajajo. Zakaj bi navsezadnje zaupali nekomu svojo kodo, če jo lahko gostite sami?
1. GitLab
Še preden je Microsoft kupil GitHub za 7 dolarjev.GitLab je bil pet milijard že priljubljena alternativa GitHubu med razvijalci programske opreme, ker je to prva posamezna aplikacija za celoten življenjski cikel DevOps, ki zajema vse faze od načrtovanja do nadzora. Čeprav so bili prvotno v celoti napisani v Rubyju, so bili številni deli GitLaba od takrat prepisani v Go, da bi izboljšali njihovo delovanje.
Vse osnovne funkcije GitLaba so izdane pod licenco MIT in so na voljo brezplačno. Tisti, ki bi radi izkoristili podporo strankam za naslednji delovni dan, več odobritev pri pregledu kode, grafe cevovodov za več projektov, časovno in ročno postopno uvajanje, opozorila o delovanju aplikacij, dinamično testiranje varnosti aplikacij in številne druge uporabne funkcije, lahko izbirajo med tri različne plačljive različice, pri čemer najcenejša stane le 4 USD na uporabnika na mesec.
Slaba stran GitLaba je, da lahko traja precej časa, da se navadiš preprosto zato, ker ima toliko funkcij. Pri večjih projektih se trud vsekakor splača, toda posamezni razvijalci bi bili morda boljši z enostavnejšo alternativo GitHub, kot je Gogs.
2. Gogs
Gogs je pogosto priporočljiv kot fantastična lastna gostiteljska alternativa GitHub za manjše ekipe in posamezne razvijalce z zmernimi zahtevami glede funkcij. Tako kot vse druge možnosti GitHub, predstavljene v tem članku, je tudi Gogs brezplačen, odprtokoden in deluje v vseh glavnih operacijskih sistemih, vključno z Windows, macOS in Linux. Dejansko Gogs deluje kjer koli, za katerega se lahko prevede Go, kar pomeni, da ga lahko celo zaženete na Raspberry Pi.
Če želite namestiti Gogs, morate samo zagnati binarno datoteko za svojo platformo in dokončati preprost postopek konfiguracije. Kljub temu da je Gogs lahek, ima vse funkcije, ki so jih uporabniki GitHub vajeni, vključno s sledenjem napakam, wikijem in seveda nadzorom različic. Njegov uporabniški vmesnik je v bistvu zrcalna kopija GitHub-a, zato ne bi smel trajati nič časa, da se navadiš.
Če je Gogs vzbudil vaše zanimanje, a vas še ni prepričal, vam priporočamo, da poskusite na spletu in iz prve roke izkusite, kaj ponuja. Obstaja veliko odmevnih organizacij in podjetij, ki so izbrale Gogsa kot svojo izbrano alternativo GitHub, na primer Univerza v Mississippiju ali Sunnyvale in nič vas ne ovira, da se jim ne pridružite.
3. Gitea
Če ste opazili, da je Gitea videti in se počuti zelo podobno Gogsu, je to dejansko zato, ker gre dejansko za vilice, ki jih vodi skupnost, namesto za enega samega vzdrževalca. Kot projekt, ki ga vodi skupnost, je razvoj Gitee bolj aktiven kot Gogs in ima nekaj dodatnih ugodnosti.
Gitea ima svež videz in odziven uporabniški vmesnik, nekateri razvijalci pa bodo zagotovo cenili, da ni niti približno podoben GitHubu kot Gogs. Medtem ko ima Gogs številne podporne datoteke, ki jih potrebuje za zagon, Gitea vse prinese v en sam binarni zapis, zaradi česar je namestitev bolj priročna, verjetno pa manj primerna za spreminjanje.
Tako kot Gogs tudi Gitea deluje kjer koli, za katerega se lahko prevede Go, in njegove zahteve so tako nizke, da se dobro obnese tudi na poceni Raspberry Pi. Ker vam tako Gogs kot Gitea omogočata uvoz obstoječih skladišč, ni razloga, da ne bi poskusili vsakega od njih, tako da se lahko sami odločite, kateri vam najbolj ustreza.
4. Fabricator
Ta paket spletnih orodij za sodelovanje pri razvoju programske opreme je bil prvotno razvit kot notranje orodje pri Facebooku, zdaj pa ga razvijalci po vsem svetu uporabljajo kot močno, hitro, razširljivo in popolnoma odprtokodno alternativo GitHub.
Phabricator je na voljo kot gostujoči primerek s samodejnimi posodobitvami, vzdrževanjem in dostopom do podpore, pa tudi kot samostojna rešitev, ki jo lahko preprosto brezplačno namestite na lastno strojno opremo. Če se odločite za samostojno gostovano pot, lahko kupite podporni pakt za dostop do gorvodne reke.
Poleg Gita Phabricator podpira tudi skladišča Mercurial in Subversion z Diffusionom, kar vam daje največjo prilagodljivost pri nadzoru različic. Treblu podobna projektna plošča, vgrajena neposredno v Phabricator, je izjemno enostavna za upravljanje projektov, poleg tega pa je na voljo tudi funkcija klepeta za izboljšano komunikacijo ekipe.
5. GitBucket
GitBucket je spletna platforma Git, napisana v Scali, ki ponuja enostavno namestitev, intuitiven uporabniški vmesnik, visoko razširljivost z vtičniki in združljivost API-jev z GitHub. Njegove funkcije vključujejo podporo tako za javne kot zasebne Git-ove repozitorije, pregledovalnik repozitorijev s spletnim urejevalnikom datotek, vgrajen wiki, časovni načrt dejavnosti z e-poštnimi obvestili in številne druge stvari, od katerih je vsak dan odvisen večina uporabnikov GitHub-a.
Za namestitev GitBucket potrebujete Javo 8 in nekaj drugih predpogojev, vendar sama namestitev sploh ni težka. Namestitev vtičnikov GitBucket je podobno enostavna, kar lahko rečemo tudi pri uporabi GitBucket. Dokler ne pričakujete preveč, vam lahko GitBucket služi kot odlična in priročna alternativa GitHubu.
Zaključek
Kot lahko vidite, GitHub še zdaleč ni edina možnost gostovanja kod, ki je danes na voljo. Če ne želite objavljati svoje kode v storitvi v lasti Microsofta ali če želite samo dostop do nekaterih funkcij, ki jih GitHub nima, je v tem članku predstavljenih 5 najboljših alternativ GitHub, ki jih lahko namestite na svoj strežnik veliko truda.