ID.nl logo
Met Gitea bouw je je eigen GitHub
© Reshift Digital
Huis

Met Gitea bouw je je eigen GitHub

Dankzij Gitea kun je relatief eenvoudig je eigen GitHub-alternatief bouwen, waar je je programmacode een plek kunt geven. Dat is erg praktisch, ook voor het bijhouden van problemen en documentatie. Bovendien dient het als back-up.

Op GitHub kun je eenvoudig je projecten een plekje geven en delen met de wereld. Maar je kunt zoiets ook zelf bouwen, bijvoorbeeld met Gitea. Deze lichtgewicht software kun je eenvoudig zelf hosten. Waarom zou je dat doen? Ten eerste is het een veilig idee om je ontwikkelbestanden in eigen beheer te hebben. Weliswaar kun je deze op GitHub ook wel privé houden, maar een foutje is snel gemaakt. Sommigen zijn ook niet blij met het feit dat GitHub is overgenomen door Microsoft. Het werkt bovendien – zeker lokaal – ook een stukje sneller. Ten slotte zijn er geen beperkingen meer, zoals je die met een gratis account wel op GitHub hebt.

©PXimport

Licht en flexibel

Gitea is gratis, opensource en uitgegeven onder MIT-licentie, wat erop neerkomt dat vrijwel alles wordt toegestaan. Het pakket biedt uiteraard versiebeheer met Git en een grafische webinterface voor het beheer. Je kunt problemen bijhouden, op basis van meldingen van gebruikers. Dit ken je wellicht van GitHub. Ook kun je uitgebreidere documentatie maken in de vorm van een wiki. Toegang tot de repository is mogelijk via http(s) en ssh. Het is geschreven in de programmeertaal Go en hierdoor platformonafhankelijk. Je kunt het draaien via het uitvoerbare bestand dat onder meer voor Linux, Windows en macOS verkrijgbaar is. Hier installeren we het onder Ubuntu 20.04 LTS met de hulp van Snap. Kleinere systemen als een Raspberry Pi of een NAS kunnen ook als basis dienen. Voor niet al te grote projectgroepen is eenvoudige hardware meer dan toereikend. Ook in vergelijking met GitLab, een van de bekendere alternatieven, liggen de systeemeisen voor Gitea een stuk lager.

Installatie

Op https://docs.gitea.io/en-us staat uitgebreide documentatie voor Gitea. Ook vind je hier verschillende installatiemethoden. Wij kiezen hier voor een installatie onder Ubuntu middels Snap. Zorg dat Snap is geïnstalleerd:

sudo apt install snapd

Daarna installeer je Gitea met:

sudo snap install gitea

Open hierna een browser met het ip-adres van het bewuste systeem en poortnummer 3000. In ons voorbeeld is dat http://10.0.10.53:3000. We kiezen als database voor SQLite3 dat geen verdere configuratie vereist. Bij Gitea base URL en SSH server domein veranderen we localhost naar het ip-adres van de bewuste server. Het maken van een administrator-account onder het kopje Instellingen beheerdersaccount is optioneel, maar wel raadzaam. De eerste geregistreerde gebruiker wordt anders automatisch de beheerder.

©PXimport

De mogelijkheden van Gitea zijn overwegend vergelijkbaar met GitHub

-

Repository maken

Je kunt binnen de webinterface van Gitea een nieuwe repository maken, door op de overzichtspagina achter Repositories op het plusteken te klikken. Vul de gevraagde details in, met minimaal een naam voor de repository en een vinkje achter Zichtbaarheid als deze repository privé moet zijn (achter de checkbox staat namelijk Maak repository privé). Klik dan op Nieuwe repository. Je kunt deze nu klonen, maar ook gebruiken voor een bestaand project, zoals we hierna zullen doen.

©PXimport

Remote repository toevoegen

We nemen een bestaand project als uitgangspunt. We gaan Gitea als remote repository toevoegen onder de naam origin met:

git remote add origin http://10.0.10.53:3000/gertjan/demo.git

Vervolgens synchroniseren we de masterbranch met de remote server:

git push -u origin master

Eventuele andere branches kun je op vergelijkbare wijze synchroniseren. Verdere wijzigingen kun je met een nieuwe push synchroniseren. Je zult merken dat om je gebruikersnaam en wachtwoord worden gevraagd. Dit kun je oplossen door op je systeem de juiste ssh-sleutels aan te maken en deze toe te voegen in Gitea.

Beschrijving toevoegen

Het is nuttig om een beschrijving te hebben van een project. In je werkdirectory maak je daarvoor een tekstbestand met de naam README.md. Gebruik bijvoorbeeld de editor nano:

nano README.md

Hier zet je in Markdown-formaat een beschrijving in. Je kunt de tekst op verschillende manieren opmaken. Gebruik bijvoorbeeld een of meerdere hekjes voor een header en twee sterretjes voor en na een tekst om die vet te maken. Voeg het bestand hierna toe aan je staging area, om het met de tweede opdracht naar je lokale repository te zetten:

git add README.md

git commit -m "Beschrijving toegevoegd"

Werk vervolgens je remote repository op Gitea bij:

git push -u origin master

Als je je projectpagina op Gitea bezoekt, zie je dat de beschrijving direct getoond wordt.

©PXimport

Extra mogelijkheden

Gitea geeft je veel extra features. De mogelijkheden zijn overwegend vergelijkbaar met GitHub en ook de interface lijkt erop. Je kunt om te beginnen op het tabblad Code alle programmabestanden bekijken, evenals de verschillende vertakkingen (branches). Als je binnen dit tabblad naar Commits gaat, zie je alle veranderingen die je hebt gedaan met de korte beschrijving. Als je er op klikt, zie je wat er precies was veranderd.

Het tabblad Kwesties geeft jou en anderen de mogelijkheid om problemen met je code te melden. Je kunt zo’n kwestie vervolgens tot in detail configureren. Je kunt bijvoorbeeld een timer starten zodat je weet hoelang je aan de oplossing werkt, een vervaldatum toevoegen om jezelf een deadline te stellen en afhankelijkheden toevoegen, als je voor het oplossen afhankelijk bent van een andere kwestie. Als het probleem is opgelost, kun je de kwestie sluiten.

Op het tabblad Pull-aanvragen geef je als medeontwikkelaar aan dat je een bepaalde feature hebt afgerond en dat die mag worden toegevoegd aan de master. Ook zulke aanvragen geven weer de mogelijkheid voor verdere discussie. Verder kun je onder andere uitgebreidere documentatie schrijven op het tabblad Wiki.

▼ Volgende artikel
Tweede seizoen van Battlefield 6 is van start
Huis

Tweede seizoen van Battlefield 6 is van start

Het tweede seizoen van Battlefield 6 is na uitstel gisteren van start gegaan.

Het tweede seizoen had eigenlijk op 20 januari van start moeten gaan, maar dat werd vier weken uitgesteld omdat het tweede seizoen nog niet klaar voor release was. Dat is nu blijkbaar wel, en spelers van de shooter kunnen dan ook aan de slag met het tweede seizoen.

Het tweede seizoen bestaat uit drie fases van een maand, die elk nieuwe content met zich meebrengen. De eerste fase heet Extreme Measures en is begonnen. Spelers kunnen aan de slag met een nieuwe multiplayermap genaamd Contaminated, dat geschikt is voor alle gevechtsgroottes. Ook is er een nieuwe tijdelijk beschikbare modus in de vorm van VL-7 Strike, en de battle royale-game Battlefield RedSec krijgt de modi Gauntlet: Altered State en Battle Royale: Synthesis. Ook zijn er nieuwe wapens en gadgets.

View post on X

De tweede fase heet Nightfall en start op 17 maart, en zal onder andere de nieuwe map Hagental Base en nieuwe Nightfall-modus - waarbij het nacht is en het zich dus slecht is - bevatten. Op 14 april begint de derde fase, Hunter / Prey, met een nieuwe gelimiteerde modus genaamd Operation Augur.

Battlefield 6 kwam afgelopen najaar uit voor pc, PlayStation 5 en Xbox Series-consoles en bleek een groot succes. In de eerste drie dagen werden er meer dan zeven miljoen exemplaren van verkocht. Tegelijkertijd kreeg de game concurrentie uit onverwachtse hoek, namelijk van de ook vorig najaar uitgekomen extraction shooter Arc Raiders.

Watch on YouTube
Watch on YouTube
▼ Volgende artikel
Nieuwe Samsung Galaxy S26-teaser laat AI-fotomogelijkheden zien
© Samsung
Huis

Nieuwe Samsung Galaxy S26-teaser laat AI-fotomogelijkheden zien

Samsung geeft alvast een voorproefje van de nieuwe camerafuncties die het volgende week onthult tijdens Galaxy Unpacked. De stap vooruit zit dit keer vooral in de software: foto's en video's bewerken moet veel natuurlijker gaan, simpelweg door in je eigen woorden te zeggen wat je wilt.

Samsung noemt voorbeelden als een foto veranderen van dag naar nacht, een ontbrekend stukje herstellen of meerdere beelden automatisch samenvoegen. In plaats van verschillende apps openen of instellingen zoeken, beschrijf je kort wat je voor ogen hebt en doet de telefooncamera de rest. Vastleggen, aanpassen en delen moeten daardoor meer als één vloeiende handeling aanvoelen.

Ook in uitdagende situaties moet de software een groter deel van het werk overnemen. Denk aan fotograferen bij weinig licht, een sterrenhemel vastleggen of video's met een filmische uitstraling maken. Samsung spreekt wel over een helderder camerasysteem, maar geeft nog geen technische details. Uit alles blijkt dat de nadruk ligt op slimmer bewerken, niet op nieuwe lenzen of sensoren.

Lees ook: Samsung Galaxy S26-teaser richt zich op het privacyscherm

©Samsung

Wanneer wordt de Samsung Galaxy S26-lijn onthuld?

Samsung organiseert op 25 februari de nieuwste editie van het tweejaarlijkse Galaxy Unpacked-evenement. Het kan niet anders dan dat daar de nieuwe Samsung Galaxy S26-lijn wordt onthuld. Vanaf 19.00 uur  's avonds (Nederlandse tijd) weten we meer!

Watch on YouTube
Watch on YouTube
Watch on YouTube