Configuration du serveur Git
Dans le chapitre précédent, notre entrepôt distant utilisait Github. Les projets publics de Github sont gratuits, mais si vous ne voulez pas que les autres voient votre projet, vous devrez payer.
À l'heure actuelle, nous devons construire nous-mêmes un serveur Git en tant qu'entrepôt privé.
Ensuite, nous utiliserons Centos comme exemple pour créer un serveur Git.
1. Installez Git
$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum install git
Ensuite, nous Créez un groupe d'utilisateurs git et un utilisateur pour exécuter le service git :
$ groupadd git $ adduser git -g git
2. Créez un certificat de connexion
Collectez les clés publiques de tous les utilisateurs qui doivent se connecter. Les clés publiques sont situées dans le fichier id_rsa.pub, importez nos clés publiques dans le fichier /home/git/.ssh/authorized_keys, une par ligne.
Si le fichier n'existe pas, créez-le :
$ cd /home/git/ $ mkdir .ssh $ chmod 700 .ssh $ touch .ssh/authorized_keys $ chmod 600 .ssh/authorized_keys
3. Initialisons le référentiel Git
Nous sélectionnons d'abord un répertoire comme le référentiel Git. En supposant qu'il s'agisse de /home/gitrepo/w3cschoolcc.git, entrez la commande dans le répertoire /home/gitrepo :
$ cd /home $ mkdir gitrepo $ chown git:git gitrepo/ $ cd gitrepo $ git init --bare w3cschoolcc.git Initialized empty Git repository in /home/gitrepo/w3cschoolcc.git/
La commande ci-dessus Git crée généralement un entrepôt Git vide sur le serveur. avec .git. Ensuite, changez l'utilisateur appartenant à l'entrepôt en git :
$ chown -R git:git w3cschoolcc.git
4. Clonez l'entrepôt
$ git clone git@192.168.45.4:/home/gitrepo/w3cschoolcc.git Cloning into 'w3cschoolcc'... warning: You appear to have cloned an empty repository. Checking connectivity... done.
192.168.45.4 est l'adresse IP du serveur sur lequel se trouve Git. à votre propre adresse IP de service Git.
De cette façon, l'installation de notre serveur Git est terminée. Ensuite, nous pouvons désactiver l'utilisateur git pour se connecter via le shell. Cela peut être fait en éditant le fichier /etc/passwd. Recherchez une ligne similaire à la suivante :
git:x:503:503::/home/git:/bin/bash
et remplacez-la par :
git:x:503:503::/home/git:/sbin/nologin