Création d'un "Github" maison
Qu'est-ce que Git?
Git est un système de gestion de versions décentralisé qui permet aux développeurs de suivre les modifications apportées à un projet. Il est utilisé par des millions de personnes dans le monde entier pour gérer des projets de toutes tailles, des petits projets personnels aux projets open source massifs.
Fonctionnalités de Git
Git offre une variété de fonctionnalités qui en font un outil puissant pour la gestion de versions :
Décentralisation : Git est un système de gestion de versions décentralisé, ce qui signifie que chaque développeur a une copie complète de l'historique du projet. Cela permet aux développeurs de travailler de manière indépendante et de collaborer facilement.
Suivi des modifications : Git permet aux développeurs de suivre les modifications apportées à un projet, y compris qui a apporté les modifications, quand elles ont été apportées et quels fichiers ont été modifiés. Cela permet aux développeurs de revenir facilement à une version précédente du projet en cas de problème.
Qu'est-ce que GitHub?
GitHub est un service d'hébergement de code et de gestion de versions basé sur le cloud. Il permet aux développeurs de stocker, gérer et partager leur code, ainsi que de collaborer avec d'autres développeurs sur des projets.
Qu'est-ce que Gogs?
Gogs est un logiciel libre et open source de gestion de versions décentralisée, basé sur Git. Il est développé par la communauté Go et est disponible en téléchargement gratuit.
C'est une alternative à GitHub, qui est un service d'hébergement de code et de gestion de versions basé sur le cloud.
Gogs offre une variété de fonctionnalités similaires à GitHub, notamment :
Gestion des versions : Gogs permet aux développeurs de suivre les modifications apportées à leur code. Cela permet aux développeurs de revenir facilement à une version précédente du code en cas de problème.
Collaboration : Gogs permet aux développeurs de collaborer facilement sur des projets. Les développeurs peuvent créer des branches pour travailler sur des fonctionnalités ou des correctifs sans perturber le code principal du projet.
Ils peuvent ensuite fusionner leurs modifications dans le code principal une fois qu'elles sont prêtes.
Documentation : Gogs permet aux développeurs de documenter leur code. Cela permet aux autres développeurs de comprendre comment utiliser le code et de trouver des informations sur les fonctionnalités et les limitations du code.
Comment l'installé ?
Comment mon habitude, nous allons procéder à l'installation de gogs dans sa version Docker.
Cette version propose nativement un accès via un portail web où par SSH.
# Création des volume docker.
$ docker volume create --name gogs-data
# Création du container
$ docker run --name=gogs -p 10022:22 -p 10880:3000 -v gogs-data:/data gogs/gogs
Gogs ecoute sur le port 10022 pour SSH et 10880 pour la partie WEB.
Configuration de Gogs
Pour lancer la configuration rendez-vous sur l'interface web sur le port 10880 en http ex : "http://192.168.2.2:10880". Vous arrivez sur cette page de configuration.
Dans notre exemple, nous allons utilise une base de donnée de type SQLite et complété les autres champs, comme le domaine ou url de l'application.
Attention à bien déroulé les onglés, sinon vous ne confugurez pas de compte Administrateur :).
Une fois la page de confuration validé, vous serait renvoyé vers acceuil de Gogs.