Taille: 1000
Commentaire: draft
|
Taille: 4000
Commentaire: Merci Thomas
|
Texte supprimé. | Texte ajouté. |
Ligne 1: | Ligne 1: |
notes sur la mise en place de git.auf.org | <<TableOfContents>> |
Ligne 3: | Ligne 3: |
La doc officielle : http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#public-repositories | Un «dépôt git» est disponible à l'AUF. Il permet : * à quiconque de suivre les développements effectués à l'AUF ; * à tout technicien AUF d'y présenter ses développements. |
Ligne 5: | Ligne 7: |
= Utilisation = | Les projets publics de ce dépôt sont visibles ici : http://git.auf.org/ |
Ligne 7: | Ligne 9: |
== Télécharger et suivre d'un projet == | Vous trouverez ci-dessous un résumé des commandes à utiliser pour exploiter ce service. Si vous voulez vraiment savoir utiliser ''git'', voyez les liens sur la page [[Git]]. = Télécharger un projet = Tous les projets visibles sur http://git.auf.org/ sont librement téléchargeables. Pour obtenir un projet, on fait d'abord un premier ''clonage'' : {{{ $ git clone git://git.auf.org/nom-du-projet }}} Cela crée un répertoire `nom-du-projet`, contenant votre dépôt git local du projet. Vous pouvez placer ce répertoire où bon vous semble. Par la suite, pour obtenir la dernière version du projet, on se place dans le répertoire déjà téléchargé et on ''pull'' : {{{ $ cd nom-du-projet $ git pull }}} = Participer à un projet (droits en écriture) = Si vous désirez participer à un projet sur le dépôt Git, vous devez : * avoir un accès au réseau privé de l'AUF (RPV) ; * envoyer votre clé publique SSH à l'un des responsables du dépôt (JeanChristopheAndré ou MoussaNombré) ; * en rappelant sur quel(s) projet(s) vous désirez obtenir les droits d'écriture. Une fois que les droits vous auront été accordés, vous pouvez envoyer vos modifications avec un ''push'' : {{{ $ git push ssh://gitosis@git.auf/nom-du-projet }}} Note : afin de pouvoir taper directement `git push`, enregistrez l'URL dans la configuration du dépôt git : {{{ $ git config remote.origin.url ssh://gitosis@git.auf/nom-du-projet }}} Note : sans doute est-il préférable de travailler sur une '''branche''' du projet, que vous créerez à l'occasion de vos expérimentations. On essayera de mettre une documentation claire sur le sujet ici prochainement... = Annexe : création d'un projet (notes pour les administrateurs du système gitosis) = Pour ajouter un projet : 1. Accéder au système de configuration de gitosis : {{{ $ git clone ssh://gitosis@git.auf/gitosis-admin $ cd gitosis-admin }}} 1. Si besoin, ajouter la clé publique ssh du ou des nouvelles personnes dans des fichiers `keydir/prenom.nom.pub`. Les ajouter au dépôt git : `git add keydir` 1. Ajouter le projet dans `gitosis.conf` : {{{ # extraits de gitosis.conf : # permissions : les personnes qui pourront publier dans le projet (ici : nacer.saidou-adamou dans le projet "nacer" [group nacer] members = nacer.saidou-adamou writable = nacer # le dépôt du projet lui-même [repo nacer] description = petits bouts de codes de Nacer owner = AuF daemon = yes gitweb = yes }}} 1. Publier la nouvelle configuration : {{{ $ git add keydir $ git commit -a -m "ajout du projet nacer" $ git push }}} 1. Enfin, créer un projet bidon et l'envoyer (note : il faut éventuellement s'y donner les droits) : {{{ $ mkdir bidon $ cd bidon $ git init $ git remote add origin gitosis@git.auf:nacer.git $ echo "codes de nacer" > LISEZMOI.txt $ git add LISEZMOI.txt $ git commit -a -m "premier commit" $ git push origin master:refs/heads/master }}} 1. Vérifier que cela fonctionne et, éventuellement, se retirer les droits en écriture pour ne les laisser qu'au propriétaire du projet. == synchronisation sur redmine.auf.org == Pour que le dépôt soit accessible sur https://redmine.auf.org/, il faut en faire un clone sur cette machine : |
Ligne 10: | Ligne 99: |
$ git clone http://git.auf.org/git/projet | root@redmine# su - redmine redmine@redmine$ cd /srv/git redmine@redmine$ git clone --bare git://git.auf.org/xxxx.git xxxx.git redmine@redmine$ cd xxxx.git redmine@redmine$ git --bare remote add origin git://git.auf.org/xxxx.git |
Ligne 13: | Ligne 106: |
== Participer à un projet (droits en écriture) == Nécessite un accès ssh au projet. {{{ $ git push ssh://git.auf.org/~user/projet master }}} = Création d'un projet = Nécessite un accès ssh : le demander à Moussa. {{{ $ git clone --bare ~/proj proj.git $ touch proj.git/git-daemon-export-ok rsync vers serveur, puis sur le serveur : $ cd proj.git $ git --bare update-server-info $ chmod a+x hooks/post-update }}} == Partage en écriture == * accès partagé via ssh : compte "virtuel" avec clés ssh publiques = TODO = * webdav ? (surtout poru simplification de l'accès pour projets partagés) * git-daemon pour accès git:// plus optimisé (bof) * test de compte "rssh only" |
Un cron s'occupe de mettre à jour tous les dépôts `/srv/git/*.git`, voir sur la page [[redmine/InstallationMontreal]]. |
Sommaire
Un «dépôt git» est disponible à l'AUF. Il permet :
- à quiconque de suivre les développements effectués à l'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/
Vous trouverez ci-dessous un résumé des commandes à utiliser pour exploiter ce service. Si vous voulez vraiment savoir utiliser git, voyez les liens sur la page Git.
Télécharger un projet
Tous les projets visibles sur http://git.auf.org/ sont librement téléchargeables.
Pour obtenir un projet, on fait d'abord un premier clonage :
$ git clone git://git.auf.org/nom-du-projet
Cela crée un répertoire nom-du-projet, contenant votre dépôt git local du projet. Vous pouvez placer ce répertoire où bon vous semble.
Par la suite, pour obtenir la dernière version du projet, on se place dans le répertoire déjà téléchargé et on pull :
$ cd nom-du-projet $ git pull
Participer à un projet (droits en écriture)
Si vous désirez participer à un projet sur le dépôt Git, vous devez :
- avoir un accès au réseau privé de l'AUF (RPV) ;
envoyer votre clé publique SSH à l'un des responsables du dépôt (JeanChristopheAndré ou MoussaNombré) ;
- en rappelant sur quel(s) projet(s) vous désirez obtenir les droits d'écriture.
Une fois que les droits vous auront été accordés, vous pouvez envoyer vos modifications avec un push :
$ git push ssh://gitosis@git.auf/nom-du-projet
Note : afin de pouvoir taper directement git push, enregistrez l'URL dans la configuration du dépôt git :
$ git config remote.origin.url ssh://gitosis@git.auf/nom-du-projet
Note : sans doute est-il préférable de travailler sur une branche du projet, que vous créerez à l'occasion de vos expérimentations. On essayera de mettre une documentation claire sur le sujet ici prochainement...
Annexe : création d'un projet (notes pour les administrateurs du système gitosis)
Pour ajouter un projet :
- Accéder au système de configuration de gitosis :
$ git clone ssh://gitosis@git.auf/gitosis-admin $ cd gitosis-admin
Si besoin, ajouter la clé publique ssh du ou des nouvelles personnes dans des fichiers keydir/prenom.nom.pub. Les ajouter au dépôt git : git add keydir
Ajouter le projet dans gitosis.conf :
# extraits de gitosis.conf : # permissions : les personnes qui pourront publier dans le projet (ici : nacer.saidou-adamou dans le projet "nacer" [group nacer] members = nacer.saidou-adamou writable = nacer # le dépôt du projet lui-même [repo nacer] description = petits bouts de codes de Nacer owner = AuF daemon = yes gitweb = yes
- Publier la nouvelle configuration :
$ git add keydir $ git commit -a -m "ajout du projet nacer" $ git push
- Enfin, créer un projet bidon et l'envoyer (note : il faut éventuellement s'y donner les droits) :
$ mkdir bidon $ cd bidon $ git init $ git remote add origin gitosis@git.auf:nacer.git $ echo "codes de nacer" > LISEZMOI.txt $ git add LISEZMOI.txt $ git commit -a -m "premier commit" $ git push origin master:refs/heads/master
- Vérifier que cela fonctionne et, éventuellement, se retirer les droits en écriture pour ne les laisser qu'au propriétaire du projet.
synchronisation sur redmine.auf.org
Pour que le dépôt soit accessible sur https://redmine.auf.org/, il faut en faire un clone sur cette machine :
root@redmine# su - redmine redmine@redmine$ cd /srv/git redmine@redmine$ git clone --bare git://git.auf.org/xxxx.git xxxx.git redmine@redmine$ cd xxxx.git redmine@redmine$ git --bare remote add origin git://git.auf.org/xxxx.git
Un cron s'occupe de mettre à jour tous les dépôts /srv/git/*.git, voir sur la page redmine/InstallationMontreal.