I den här artikeln ger vi dig en översikt över de 5 bästa GitHub-alternativen med egen värd som hjälper dig att återfå kontrollen över din egen kod och kanske få tillgång till användbara funktioner som du inte ens visste fanns. När allt kommer omkring, varför skulle du lita på någon annan med din kod när du kan vara värd för den själv?
1. GitLab
Redan innan Microsoft förvärvade GitHub för $ 7.5 miljarder var GitLab redan ett populärt alternativ till GitHub bland programutvecklare eftersom det är den första enskilda applikationen för hela DevOps livscykel, som täcker alla steg från planering till övervakning. Även om de ursprungligen skrevs helt i Ruby har många delar av GitLab skrivits om sedan i Go för att förbättra deras prestanda.
Alla kärnfunktioner i GitLab släpps under MIT-licensen och de är tillgängliga gratis. De som vill dra nytta av kundsupport nästa arbetsdag, flera godkännanden i kodgranskning, pipettdiagram med flera projekt, tidsinställda och manuella inkrementella utrullningsdistributioner, varningar om applikationsprestanda, dynamisk säkerhetstestning av applikationer och många andra användbara funktioner kan välja mellan tre olika betalda versioner, med den mest prisvärda kostar bara 4 dollar per användare och månad.
Nackdelen med GitLab är att det kan ta ganska mycket tid att vänja sig bara för att den har så många funktioner. För större projekt är ansträngningen definitivt värt det, men enskilda utvecklare kan vara bättre med ett enklare GitHub-alternativ, till exempel Gogs.
2. Gogs
Gogs rekommenderas ofta som ett fantastiskt självvärd GitHub-alternativ för mindre lag och enskilda utvecklare med måttliga funktionskrav. Precis som alla andra GitHub-alternativ som presenteras i den här artikeln är Gogs gratis, öppen källkod och körs på alla större operativsystem, inklusive Windows, macOS och Linux. Faktum är att Gogs körs var som helst Go kan kompilera för, vilket innebär att du till och med kan köra den på din Raspberry Pi.
För att installera Gogs är allt du behöver göra att köra binären för din plattform och slutföra den enkla konfigurationsprocessen. Trots att de är lätta har Gogs alla funktioner som GitHub-användare är vana vid, inklusive bugspårning, wiki och, naturligtvis, versionskontroll. Dess användargränssnitt är i huvudsak en spegelkopia av GitHub, så det borde inte ta någon tid att vänja sig.
Om Gogs har väckt ditt intresse men inte har övertygat dig ännu, rekommenderar vi att du testar det online för att uppleva första hand vad det har att erbjuda. Det finns många högt profilerade organisationer och företag som har valt Gogs som GitHub-alternativ, till exempel University of Mississippi eller Sunnyvale, och det finns inget som hindrar dig från att gå med dem.
3. Gitea
Om du har märkt att Gitea ser ut och känns väldigt lik Gogs, beror det på att det faktiskt är en gaffel som leds av samhället istället för en enda underhållare. Att vara ett samhällsdrivet projekt är Giteas utveckling mer aktiv än Gogs, och det har också några ytterligare förmåner.
Gitea har ett nytt utseende och ett responsivt användargränssnitt, och vissa utvecklare kommer definitivt att uppskatta att det inte liknar GitHub nästan lika mycket som Gogs gör. Medan Gogs har ett antal supportfiler som krävs för att köra, tar Gitea allt i en enda binär, vilket gör det bekvämare att installera men utan tvekan mindre bekvämt att ändra.
Precis som Gogs kör Gitea var som helst Go kan kompilera för, och dess krav är så låga att det fungerar bra även på en billig Raspberry Pi. Eftersom både Gogs och Gitea tillåter dig att importera befintliga arkiv finns det ingen anledning att inte prova var och en av dem så att du själv kan bestämma vilken som passar dig mer.
4. Phabricator
Denna svit med webbaserade programvaruutvecklingssamarbetsverktyg utvecklades ursprungligen som ett internt verktyg på Facebook, men det används nu av utvecklare runt om i världen som ett kraftfullt, snabbt, skalbart och helt öppet källkodalternativ till GitHub.
Phabricator finns både som en värdinstans med automatiska uppdateringar, underhåll och tillgång till support och som en självhostad lösning som du enkelt kan installera lokalt på din egen hårdvara gratis. Om du bestämmer dig för att gå den egenhostade rutten kan du köpa en supportpakt för åtkomst till uppströms.
Förutom Git stöder Phabricator också Mercurial- och Subversion-förvar med Diffusion, vilket ger dig maximal flexibilitet när det gäller versionskontroll. Inbyggt direkt i Phabricator är ett Trello-liknande projektkort som gör det extremt enkelt att hantera projekt, och det finns också en chattfunktionalitet för förbättrad teamkommunikation.
5. GitBucket
GitBucket är en Git-webbplattform skriven i Scala som erbjuder enkel installation, intuitivt användargränssnitt, hög utbyggbarhet med plugins och API-kompatibilitet med GitHub. Funktionerna inkluderar stöd för både offentliga och privata Git-arkiv, förvaringsvisare med en online-filredigerare, inbyggd wiki, aktivitetstidslinje med e-postaviseringar och många andra saker som de flesta GitHub-användare är beroende av varje dag.
För att installera GitBucket behöver du Java 8, liksom några andra förutsättningar, men själva installationen är inte svårt alls. Installera GitBucket-plugins är lika enkelt, och samma kan sägas om att använda GitBucket. Så länge du inte förväntar dig för mycket kan GitBucket fungera som ett bra och bekvämt alternativ till GitHub.
Slutsats
Som du kan se är GitHub inte det enda alternativet för kodhantering som finns idag. Om du inte går bra med att publicera din kod på en tjänst som ägs av Microsoft, eller om du bara vill ha tillgång till vissa funktioner som GitHub inte har, presenterar den här artikeln 5 bästa GitHub-alternativ som du kan installera på din egen server utan för mycket ansträngning.