Développeur FullStack & Devops

Notes et mémos techniques

Serveur Git sur un NAS Synology

Git est un outil de SCM (Source Code Management), il permet simplement de sauvegarder des fichiers et leurs différentes versions au cours du temps, mais également de faciliter le travail collaboratif des développeurs.

Installation d'un serveur Git sur un NAS Synology

Préparation de l'intallation

  1. créer un nouvel utilisateur git sur le DSM, ce qui permettera les push coté clients via SSH
  2. ajouter les clés SSH publiques des clients (ceux qui vont se connecter aux répos) dans ~/.ssh/authorized_keys de ce nouvel utilisateur, pour permettre l'authentification lors des commandes git
  3. créer un dossier où seront stockés les repos par ex: /volume1/git_repos
  4. puis appliquer les permissions adequats:
chown git:git-users /volume1/git_repos && chmod g+s /volume1/git_repos

Installation de l'application Synology

2018 10 09 12 46 04 backup Synology DiskStation Depuis le package center du DSM, installation de l'application git. Au niveau des permissions, les users du groupe Admin auront accès d'office. Rebooter le NAS pour terminer la procédure d'installation.

Initialisation du repo Git

Pour pouvoir utiliser git il faut initialiser les 2 cotés client et serveur.

Initialisation git coté Serveur

Création d'un dépot Git Se logger sur le NAS en ssh puis initialiser un repo git comme ceci :

sudo git init --bare --shared /volume1/git_repos/newgitrepo.git
sudo chown -R root:git-users /volume1/git_repos/newgitrepo.git

Initialisation git coté client

Pour pouvoir effectuer un git push avec un client git, il faut bien entendu avoir initialisé un repo git local avec un git init puis ajouter le repo remote :

git remote add dsm ssh://mon_username@mon_servername/volume1/git_repos/newgitrepo.git
git remote -v

git push ne fonctionnera pas simplement la 1ère fois sans spécifier l'option --set-upstream, car le système ignore qu'on souhaite pousser sur la branche master.

git push --set-upstream mon_servername master

Liens

dsm
fullstack
git
linux
synology
tutoriel
vscode
rédigé le 10/05/18 , maj le 24/01/22 par Behrouze
A proposCheat SheetsOutilsVidéos