Catégories
Auto hébergement unRaid

Gitea : un dépôt au goût relaxant

Un service Git à héberger soi-même

Un outil auto hébergeable

Gitea est un service basé sur la technologie Git, codé en Go. Vous en connaissez certainement d’autres, comme GitHub (développé en Ruby on Rails et Erlang par Chris Wanstrath, PJ Hyett et Tom Preston-Werner, acquis par Microsoft en 2018) ou GitLab (développé en Ruby par GitLab Inc et créé par Dmitriy Zaporozhets et par Valery Sizov).
La technologie étant la même, on retrouve globalement le même service rendu. J’utilise pour ma part Gitea en tant que container sous docker, sur mon serveur unRaid.

L’approche qui m’intéresse ici est, comme pas mal de mes projets auto-hébergés, de garder le contrôle sur mes données. Même si je garde un lien avec GitLab comme on le verra par la suite.
En tant qu’outil auto-hébergé, on profite de fonctionnalités réservées aux contributeurs payant sur les autres plate-formes. Je vous renvoie vers la page dédiée à cette comparaison ici.


Mais c’est quoi Git ?

Git est d’abord une technologie. Cela explique pourquoi il existe plusieurs sites qui sont basés sur Git. Comme défini par Wikipédia, c’est un logiciel de gestion de versions décentralisé, un logiciel libre créé par Linus Torvalds, auteur du noyau Linux, et distribué selon les termes de la licence publique générale GNU version 2.

Et en clair ? Et bien git permet de stocker dans un endroit appelé dépôt (ou repository), des fichiers et dossiers, au même titre que l’explorateur sur votre ordinateur. Evidemment, ce n’est pas un simple système de fichiers. En tant qu’outil collaboratif, il permet à plusieurs personnes de cloner le contenu du dépôt et d’apporter des ajouts ou des modifications, avant de les proposer, en retour, vers le dépôt, ou encore d’en réaliser un fork, une version modifiée. Chacun peut ainsi proposer des modifications, ajouts, suppressions,… aux fichiers présents sur le dépôt.

Chaque modification de fichier fait l’objet d’une nouvelle mention, appelée commit, qui peut être validée et ainsi intégrer le projet.
Comme tout est « versionné », aucun souci pour revenir à une version précédente si jamais une modification entraîne des problèmes.

Je suis loin d’être un expert de Git. J’ai longtemps été intrigué par son fonctionnement et j’ai franchi le pas très récemment. Mais je suis tellement conquis que je regrette de ne pas y être passé plus tôt.


Revenons plus particulièrement à Gitea

Donc Gitea, est un fork de gogs. Il a cette particularité d’être pensé pour l’auto-hébergement. Vous pouvez ainsi avoir le contrôle total de vos données, et même proposer à d’autres personnes de s’inscrire sur votre Gitea pour y créer un dépôt ou participer au votre.

J’héberge ce service via Docker sous unRaid, ce qui me permet de le déployer et de le maintenir à jour très facilement. Sans rentrer dans les détails, je rends accessible Gitea sur le net via un reverse proxy associé à un nom de domaine que j’ai acheté.

Le déploiement se fait très facilement grâce à Docker. On installe ça comme on le ferait avec une application sur un smartphone. Quelques détails de configuration plus tard, on accède à sa page Gitea.

On crée son compte et on peut déjà commencer à envoyer son premier projet.


Voilà pour ce premier article sur Gitea. La suite au prochain épisode…

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.