Modifications entre les versions 8 et 9
Version 8 à la date du 2008-03-11 19:14:40
Taille: 2734
Éditeur: ThomasNoël
Commentaire:
Version 9 à la date du 2008-09-25 11:33:28
Taille: 2779
Commentaire: quelques corrections...
Texte supprimé. Texte ajouté.
Ligne 39: Ligne 39:
$ rsync -a projet.export git.auf:~user/projet $ rsync -a projet.export user@git.auf:projet
Ligne 45: Ligne 45:
$ cd /.../projet/
$ echo "description" > description
$ cd ~user/projet/
$ echo "Description du projet en 35 caractères (ou plus)." > description
Ligne 55: Ligne 55:
$ ln -s /.../projet . $ sudo ln -s ~user/projet .

Un dépôt git est disponible à l'AUF. Il permet :

  • à quiconque de suivre les développements AUF ;
  • à tout technicien AUF d'y présenter ses développements.

Les projets publics de ce dépôt sont visibles ici : http://git.auf.org/

Ci-dessous un résumé (pense-bête) des commandes à utiliser pour exploiter ce service. Si vous voulez vraiment savoir utiliser git, consultez d'abord la documentation officielle.

Télécharger et suivre d'un projet

Premier téléchargement :

  • $ git clone http://git.auf.org/git/projet

Télécharger les mises à jour :

  • $ cd projet
    $ git pull

Participer à un projet (droits en écriture)

Nécessite un accès RPV + ssh.

  • $ git push ssh://git.auf/~user/projet 

Création d'un projet

Nécessite un accès RPV + ssh.

Sur la machine où le projet est présent :

  • $ git clone --bare ~/projet projet.export
    $ rsync -a projet.export user@git.auf:projet
    $ rm -rf projet.export

Sur le serveur :

  • $ cd ~user/projet/
    $ echo "Description du projet en 35 caractères (ou plus)." > description
    $ touch git-daemon-export-ok
    $ git --bare update-server-info
    $ chmod a+x hooks/post-update

Publication via http et vue sur gitweb (optionnelles) :

  • $ cd /srv/git/
    $ sudo ln -s ~user/projet .

Partage en écriture

Si plusieurs personnes doivent intervenir sur le projet, on peut créer un compte "virtuel" accessible par ssh à un ensemble de clés bien défini. L'adresse publique ne changera pas.

Eviter un accès shell complet via ssh

Pour que l'accès ssh soit restreint aux commandes git nécessaires, on met le shell de connexion de l'utilisateur à /usr/bin/git-shell1.

Ce qui reste à faire : rien...

  • http://eagain.net/blog/2007/03/22/howto-host-git.html : hébergement de gits, à étudier (lu en diagonale)

  • rsync public pour accès rsync
  • webdav ? Mmh, les droits d'écriture à "www-data" ne me plaisent pas. Ceci dit, pour un accès public, c'est-à-dire écriture depuis en dehors du RPV... Entre ça et des comptes avec git-shell sur un port autre que 22, mon coeur balance.

  • git-daemon pour accès git:// plus optimisé : pas vraiment nécessaire
  • dissocier gitweb de la publication via http (c'est-à-dire ne pas rendre tous les projets publics visibles via gitweb) : possible mais plutôt inutile


Notes de bas de page :

  1. Ni rssh ni scponly ne fonctionnent, notamment par rapport à la notion de hooks (1)

Git/DépôtGit (dernière édition le 2015-07-20 23:59:57 par JeanChristopheAndré)