~~NOTOC~~ ====== Dépôts Mercurial sur tux ====== ===== Accéder aux dépôts ===== Le serveur du LUG héberge quelques dépôts Mercurial accessibles sur ''http://strasbourg.linuxfr.org/hg/''. Pour récupérer une copie de l'un de ces dépôts, utilisez la commande ''clone'' de Mercurial, par exemple : hg clone http://strasbourg.linuxfr.org/hg/test/ Vous pouvez aussi récupérer un fichier tar contenant une archive des sources d'un dépôt par : wget http://strasbourg.linuxfr.org/hg/test/archive/tip.tar.gz :!: Le dépôt **test** est un dépôt « bac à sable », n'hésitez pas à vous en servir pour vos essais. ===== Contribuer aux dépôts ===== Pour contribuer à un dépôt, il vous faut un compte dans le wiki du LUG. La [[mercurial-server|mise en place]] a été faite de telle sorte à ce que les comptes utilisés pour DokuWiki le soient aussi pour pousser des modifications dans les dépôts Mercurial du site (via HTTP PUSH). Si vous disposez d'un compte, récupérez une copie du dépôt qui vous intéresse, faites vos modifications et lorsque vous souhaitez les partager, envoyez vos modifications dans le dépôt concerné. Exemple : ~$ hg clone http://strasbourg.linuxfr.org/hg/test test ~$ cd test ~test$ vim file (modify... test... etc) ~test$ hg add file ~test$ hg ci -m "Adding test file" ~test$ hg out searching for changes changeset: 4:fce15899f74c tag: tip user: Guy Brand date: Mon Mar 12 14:03:19 2007 +0100 summary: Adding test file ~test$ hg push pushing to https://strasbourg.linuxfr.org/hg/test searching for changes http authorization required realm: Users user: xxxxxxxx password: xxxxxxxx adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files ===== Héberger un dépôt ===== Pour héberger un nouveau dépôt sur le serveur, il doit être cloné une première fois depuis votre machine. Mettez nous votre dépôt initial à disposition (par exemple via la commande ''hg serve'' de Mercurial) en nous indiquant son URL, il sera alors cloné sur le serveur du LUG et ajouté au pool de dépôts qui sont disponibles depuis notre site. Si vous ne pouvez ou ne souhaitez pas mettre à disposition votre dépôt, vous pouvez aussi nous le mettre à disposition sous forme d'une archive (tar.gz) complète contenant l'ensemble des fichiers de votre dépôt. Ou encore faites un ''hg bundle --base null project.hg'' dans votre dépôt local et transmettez nous le fichier project.hg pour permettre la création du dépôt sur le serveur. ===== Dépôt en accès restreint ===== Certains dépôts hébergés sur le serveur du LUG peuvent être restreints en écriture à un groupe limité d'utilisateurs. Si vous souhaitez mettre en place un dépôt avec un accès limité en écriture (push) à certains utilisateurs, merci de le préciser lors de la mise en place initiale de votre dépôt. ===== Problèmes et solutions ===== == ValueError: AbstractDigestAuthHandler doesn't know about Basic == Assurez vous d'avoir employé le bon mot de passe (celui de votre compte pour le Wiki). Si tel est le cas, votre mot de passe n'est peut-être pas chiffré de la bonne façon : connectez vous au wiki et mettez à jour votre profil (partie mot de passe) pour forcer le bon chiffrement du mot de passe. == ssl required == Vous pouvez cloner un dépôt par HTTP ''hg clone http://strasbourg.linuxfr.org/hg/test'' mais pour envoyer vos modifications (push) dans un dépôt, vous devez utiliser HTTPS. Spécifiez https lors de la commande push : ''hg push https://strasbourg.linuxfr.org/hg/test'' Pour ne pas avoir à spécifier cela à chaque appel de la commande push, vous pouvez éditer le fichier ''.hg/hgrc'' de votre copie locale du dépôt et vérifier que la section paths est proprement renseignée : [paths] default = https://strasbourg.linuxfr.org/hg/test