Auto-héberger un serveur Git

GIT

J’ai déjà parlé à plusieurs reprises de Git, ce logiciel de gestion de versions créé par Linus lui-même.

Si vous souhaitez héberger votre propre serveur Git sous Debian ou Ubuntu, c’est très simple :

 

Côté serveur :

 

apt-get install git lighttpd ssh
adduser --system --shell /bin/bash --group --disabled-password --home /var/git/ git
chown git:git /var/git

 

Si vous ne voulez pas de mot de passe, uniquement un échange de clés SSH, modifier cette ligne dans le fichier /etc/ssh/sshd_config :

 

PasswordAuthentication no

 

 

Côté client :

 

Si vous n’avez pas encore de clés SSH :

ssh-keygen -t rsa
cat ~/.ssh/ip_rsa.pub

Copier la clé publique RSA affichée à l’écran.

 

Retour sur le serveur :

 

su - git
mkdir .ssh
vim .ssh/authorized_keys

Coller la clé RSA du client.

mkdir monprojetquitue.git
cd monprojetquitue.git
git init --bare

Pour un serveur Web (qui écoute sur le port 1234) :

git instaweb

 

Sur le client, ça marche comme chez Github :

 

git clone git@IP_ou_nom_du_serveur:monprojetquitue.git
cd monprojetquitue

Travailler sur le projet puis :

git add . --all
git commit -m "Premier commit"
git push origin master

 

 

N’oubliez pas de coller les clés publiques dans authorized_keys pour chaque nouveau client.

 

Et voili.

 

 

Sur le même sujet :