Ce thread s'adresse surtout aux (futurs) auteurs de labyrinthe qui connaissent Git (ou Subversion/Bazaar/Mercurial). Ce sont des outils développés initialement pour les programmeurs. Si vous n'avez jamais utilisé Git, et n'avez pas l'intention d'apprendre à maîtriser cette bête, ce n'est pas la peine de lire plus loin. Une version ultérieure de FunLabyrinthe (5.2.1 ou 5.3, on verra) devrait vous permettre d'en profiter sans rien y connaître .

Dans la suite de ce message, je supposerai donc que vous savez ce qu'est Git.

Vous avez peut-être déjà remarqué que le code du programme FunLabyrinthe est sous Git. Il est hébergé chez GitHub. Ce qui est nouveau, c'est que la bibliothèque (la Library) est aussi sous Git. Et mieux encore : les projets peuvent être sous Git !

Le repo public de la Library

La première bonne idée, si vous savez vous servir de Git, est donc d'utiliser le repo Git pour maintenir votre Library au lieu d'utiliser les .zip de mise à jour "manuelle". Faites un backup du dossier FunLabyrinthe\Library\ (renommez-le Library-Backup par exemple) puis clonez le repo git. Il y a bien sûr le dépôt en lecture seule par protocole git :
git://git.funlabyrinthe.com/git/funlaby/library
(non, pas de .git à la fin, il y a un Gitolite derrière), mais en fait vous faites beaucoup mieux de profiter de votre accès en tant qu'auteur au repo en lecture/écriture (si si !).

Configurer votre clef publique

Si ce n'est pas encore fait, créez donc votre compte auteur FunLabyrinthe. Quand vous avez un compte auteur, vous devez configurer votre accès par clef publique. Je ne présenterai pas ici le moyen de créer votre paire de clef publique/privée, GitHub le fait très bien. Quand vous avez votre clef publique au format OpenSSH, allez sur cette page (qui n'est pas encore tout à fait publique). Dans un futur proche, cette page devrait permettre de générer une paire de clef toute seule. Mais pour l'instant vous ne pouvez que uploader une clef publique que vous avez créée vous-même. Utilisez donc le formulaire en bas de page pour faire ça.

Le repo Library en lecture/écriture

Maintenant que vous avez configuré votre clef publique, clonez le repo suivant :
funlabygit@git.funlabyrinthe.com:library

Dans ce repo, vous pouvez créer une ou plusieurs branches pour vous : personal/votrelogin/unebranche. Par exemple, comme mon login est sjrd, je peux créer ma branche de travail personal/sjrd/master. En pratique, ça veut dire que vous allez probablement toujours travailler dans une branche locale "master" qui pull-era depuis "origin/master", mais push-era vers "origin/personal/votrelogin/master".

Un repo pour vos projets

Vous aurez probablement envie de gérer vos projets avec Git également. Rien ne vous empêche d'utiliser exclusivement un repo local, ou d'utiliser votre propre solution d'hébergement distant. Mais en tant qu'auteur FunLabyrinthe, vous pouvez obtenir, pour chaque projet que vous avez enregistré dans le catalogue, un repo Git sur le serveur Git de FunLabyrinthe. Pour cela, il vous suffit de me contacter en me spécifiant le nom du repo que vous voulez, et pour quel projet vous le voulez. Le nom du repo ne doit contenir que des lettres minuscules sans accents, des chiffres et/ou des traits d'union (-).

Je vous ferai alors un repo :
funlabygit@git.funlabyrinthe.com/projects/votrelogin/votre-labyrinthe
Vous aurez un accès en lecture et écriture complet dessus. Il est en lecture seule pour tous les autres auteurs de labyrinthes, et accessible en git read-only à :
git://git.funlabyrinthe.com/git/funlaby/projects/votrelogin/votre-labyrinthe

Dans un futur proche, cette solution aura également l'avantage de mettre à jour automatiquement l'archive .zip de votre projet à partir de votre repo sur le serveur de FunLabyrinthe.