Marre d’avoir vos codes à la vue de tous sur github ?
Ou bien être limité en nombre de dépôt sur d’autres services ?
Installer directement le serveur git sur votre serveur, que ce soir un serveur physique, vps ou même sur un Raspberry pi chez vous ….
Préparation du serveur
N’oublier pas de vous connecter en root
afin de ne pas retaper sudo avant chaque commande
apt-get update && apt-get upgrade
apt-get install git
Création du répertoire ou les dépôt GIT seront stockés
mkdir /var/git/
Dans notre installation il y aura un groupe d’utilisateur GIT qui aura le repertoire /var/git
associé. Donc on crée le groupe et on le lie au dossier et on change les permissions de celui ci
addgroup git
chgrp -R git /var/git
chmod -R g+swX /var/git
Mise en place du GIT
Pour les test on aura deux utilisateurs pour vérifier que le git fonctionne bien
ps: les utilisateurs doivent avoir un nom sans majuscules
adduser usertest1
adduser usertest2
Ajouter le mot de passe et informations voulues dans chaque utilisateur
Puis on ajoute les utilisateurs dans le groupe GIT
usermod -G git usertest1
usermod -G git usertest2
Et enfin on créer notre premier dépôt GIT !
Attention c’est du beau, du magnifique …. oui du banal en fait.
cd /var/git
mkdir test
cd test
git init --bare --shared=group
Le paramètre shared est important, sinon pas de travail en groupe !
Coté client
Sous Windows
Au plus simple ? Tortoise Git fait bien le boulot.
Pour récupérer le dossier un simple Clic-Droit / Git Clone
et dans le champs URL :
ssh://NOM_DE_L_UTILISATEUR@IP_DU_SERVEUR/var/git/test
indiquer le mot de passe et voila le dossier et récupéré vous pouvez le modifier et le commit en direction du serveur
Pour visualiser les commits
cd /var/git/test
git log
Pour plus de détails utilisez git log -p
pour avoir les fichiers ajoutés/modifiés/supprimés et en option :
-NombreDeCommit
pour limiter aux x derniers commits.
Exemple : git log -p -3
Sous Linux
Création du répertoire ou seront mis les dépôts
mkdir /home/git/
cd /home/git/
git clone ssh://NOM_DE_L_UTILISATEUR@IP_DU_SERVEUR/var/git/test
Ajout d’un fichier et renvoi
cd /home/git/test
echo "Ceci est un test pour le depot test de git :D " > test.txt
git add test.txt //ou bien "git add ." ou "git add -A" pour tout ajouter
git status //optionnel
git commit -m "MESSAGE_INFORMATIF_SUR_LE_COMMIT"
git push //pour renvoyer vers le serveur
Sous Mac OS X
Utiliser les lignes de commande de linux ou bien il existe ce Client Graphique GitX
ou bien Ungit, client multi-plateforme