commit hook en Python pour mercurialMercurial est un système distribué de gestion de sources écrit en Python. Il permet à des développeurs de travailler avec leur code et de le versionner comme avec Subversion, mais sans avoir à dépendre d'un serveur centralisé: chaque modification est conservée localement, et le développeur peut à tout moment se synchroniser avec un autre repository, qu'il soit sur un serveur ou sur un autre poste de développement.
Un repository Mercurial est accessible entres autres en SSH, et peut être recopié localement pour être modifié (commande clone), puis mis à jour avec la commande push. L'utilisation de Mercurial est très similaire à celle de Subversion: dabox:~ tarek$ hg Mettre en place un projet basé sur Mercurial consiste donc à mettre à disposition des développeurs un repository via un utilisateur SSH. Cette mise en place est expliquée sur cette page : http://www.selenic.com/mercurial/wiki/index.cgi/MultipleCommitters. Mercurial propose, comme Subversion un système de hook pour effectuer des opérations lorsqu'un développeur "push" des modifications sur le serveur désigné comme "central". Un script pour envoyer des mails à chaque push est fourni sur le site, mais n'est pas très souple (script shell basic). Voici un script Python qui offre un peu plus de souplesse: #!/usr/bin/pythonIl est associé à un fichier de configuration qui permet d'indiquer:
exemple de fichier: [configuration]Ces deux fichiers sont placés dans le répertoire .hg du repository du serveur, et indiqués dans le fichier hgrc de ce même répertoire: [hooks]Mercurial, pour conclure, est probablement l'un des systèmes de gestion de source les plus souples pour des projets personnels : le repository local peut être à tout moment cloné sur une autre machine, ce qui offre énormément de facilité pour partager son travail versionné, ou mettre en place un système de sauvegarde passif basé sur des push réguliers vers un serveur. Il est probablement équivalent à Bazaar, que je n'ai pas encore testé.
"Et darcs ?" posté par Stéphane Bortzmeyer le 28/12/2006 à 22:53
À part qu'il n'est pas écrit en Python, pourquoi pas Darcs ?
Je trouve Mercurial très pénible à utiliser, notamment avec son habitude de nécessiter des fusions (qu'il faut committer) dès qu'on synchronise deux dépôts.
"@Stéphane" posté par Tarek le 29/12/2006 à 15:03
Salut,
Le principe des merges ne me choque pas, je trouve ca bien qu'il soit explicite. Ceci étant dit, je n'ai pas testé Mercurial sur des gros volumes d'échanges avec beaucoup de commiters encore. j'ai commencé à regarder Darcs, ca a l'air vraiment bien, je vais essayer aussi. Merci pour l'info
"Spam" posté par Labadie le 04/01/2007 à 12:47
je vois qu'un robot (sans doute) a posté son spam.
Je gère un forum, et je me demandai si ce spam qui vient de l'etranger serait bloqué par des questions en français dans plusieurs images (une partie de l'image contient une question), dans différents formats ?
"@labadie" posté par tarek le 06/01/2007 à 10:23
OUi, je dois ajouter un captcha, dès que j'ai le temps...
|
A propos
|