Dépôts GIT personnels

De Service Informatique de l'Institut Galilée
Aller à la navigation Aller à la recherche

Git

Le logiciel GIT est installé sous Linux dans les salles de TP. La commande git permet à un utilisateur de créer des dépôts et d'y accéder ensuite localement, ou à distance par le protocole ssh.

De plus, pour plus de facilité d'accès et pour permettre de partager un dépôt entre plusieurs utilisateurs choisis, les protocoles http et https peuvent également être utilisés.

Localisation des dépôts accessibles par HTTP(S)

Pour qu'un dépôt soit accessible par HTTP ou HTTPS, il faut obligatoirement qu'il se trouve dans un sous-répertoire de $HOME/git, où $HOME est le répertoire de l'utilisateur qui le possède.

Création d'un dépôt accessible par HTTP(S)

De plus, le répertoire du dépôt doit contenir un fichier spécial git-http-backend qui permet au serveur web d'exécuter les commandes de GIT au nom de l'utilisateur qui possède le dépôt, ainsi que des fichiers pour gérer les droits d'accès au dépôt.

Pour faciliter la mise-en-place d'un dépôt accessible par HTTP(S), l'utilisateur peut lancer la commande git-http-prepare, qui prend pour argument le nom du dépôt à créer.

Exemple :

git-http-prepare premier_depot

Cette commande crée un dépôt dans $HOME/git/premier_depot et ajoute les fichiers suivants pour les droits d'accès :

  • .htaccess
  • .htgroups
  • .htpasswd

Des fichiers de description sont également créés :

  • description
  • category

S'il y avait déjà un dépôt dans ce répertoire, la commande ne fait qu'ajouter les fichiers pour les droits d'accès.

Pour gérer les droits d'accès à un dépôt, le plus simple est d'éditer le fichier .htgroups qui se trouve à l'intérieur. Au cas où l'on veut ajouter des droits à un utilisateur qui n'a pas de compte à l'Université Paris 13, on peut ajouter des couples (login mot_de_passe) au fichier .htpasswd. Ce fichier étant interprété par le serveur Web, se référer à la documentation de « Apache 2.4 » pour plus d'information.

Les fichiers description et category peuvent être édités librement ; ils sont uniquement utilisés pour personnaliser l'affichage des dépôts sur l'interface Web.

Accès à un dépôt par HTTP(S)

Depuis un navigateur Web

L'adresse des dépôts d'un utilisateur lambda est :

https://etudiants.ig-edu.univ-paris13.fr/git/lambda

ou encore :

https://si-galilee.univ-paris13.fr/git/lambda

Les utilisateurs voient la liste des dépôts de lambda pour lesquels l'utilisateur lambda leur a donné les droits en lecture.

En ligne de commande

Le dépôt premier_depot d'un utilisateur lambda (où lambda est l'identifiant de connexion de l'utilisateur) peut être cloné par la commande :

git clone https://etudiants.ig-edu.univ-paris13.fr/git/lambda/premier_depot

ou encore :

git clone https://si-galilee.univ-paris13.fr/git/lambda/premier_depot

Si un message d'erreur survient, il se peut qu'il faille faire précéder la commande par GIT_SSL_NO_VERIFY=1 :

GIT_SSL_NO_VERIFY=1 git clone https://etudiants.ig-edu.univ-paris13.fr/git/lambda/premier_depot

La variable GIT_SSL_NO_VERIFY=1 doit alors être utilisée pour toutes les commandes de GIT qui communiquent avec le serveur.