Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - subversion

Fil des billets - Fil des commentaires

lundi, juillet 20 2009

En plein dans le Mercure

En ce moment, je m'amuse pas mal avec Mercurial.

Chez Zoomorama, parce que Subversion devenait limitant pour nous, nous avons décidé de migrer vers Mercurial. On a pas mal recherché et discuté des différents avantages et inconvénients entre git et mercurial, et hg nous semble plus approprié pour nos besoins.

  1. Mercurial nous semble plus propre d'un point de vue des commandes (Il n'y a pas 144 scripts différents avec des dépendances dans tout les sens comme dans Git) et il est presque aussi simple à utiliser que subversion. Cela nous fera gagner du temps pour s'approprier l'outil.
  2. Il y a une très bonne documentation (bien que celle de Git semble s'améliorer), entre autre ce guide
  3. Et surtout il a un bon support sur toutes les plateformes, ce qui est important pour nous puisqu'on fait, entre autres choses, des applis multi plateformes basées sur Mozilla.
  4. On utilise Gecko, en le modifiant, et Gecko étant sous Mercurial, ça ne nous fait pas apprendre un nième outils.

Au niveau fonctionnalités, Git et Mercurial se valent je trouve, surtout dans les fonctionnalités de base. Mercurial a beaucoup progressé et comblé son relatif retard ces derniers temps. Et vu qu'on ne va pas forcément utiliser les fonctionnalités super avancées de ces outils ce n'est pas sur ce point qu'on a pu les départager (quoique, j'apprecie beaucoup l'extension mq de Mercurial)... D'un point de vue performance, on n'a pas des projets de plusieurs dizaines de millions de lignes de code, aussi je ne pense pas que Mercurial va nous pénaliser (bien qu'il parait qu'il est plus lent que Git sur certaines opérations).

Le seul inconvénient qu'on lui trouve : le site officiel est moche par rapport à celui de git :-), mais heureusement, il y a un nouveau site plus propre : http://hg-scm.org/.

Un bon comparatif (sans troll et assez objectif je trouve) qui a fini par nous convaincre : Git vs Mercurial.

Et puis, du coté de mes projets perso, je suis en train aussi de passer aussi à Mercurial. Pour Jelix, je viens de monter http://hg.jelix.org. Je dois encore configurer les droits d'accés pour le push via ssh (c'est moins classe à configurer que pour subversion [1]) et quelques autres broutilles (comme modifier les cron des builders de nightlies). Je vais enfin pouvoir commiter dans le train !

À propos de gestionnaire de sources, le projet PHP vient de changer lui aussi de système. Ils ont enfin délaissé CVS pour utiliser Subversion. Je m'étonne toutefois qu'ils ne se soient pas orienté vers Git, Mercurial ou un autre système décentralisé. Surtout que je n'arrive pas à mettre la main sur leurs arguments en faveur de Subversion par rapport à Git/Mercurial.

Notes

[1] en fait non, une fois compris le truc, c'est bien plus puissant, en utilisant http://hg.opensource.lshift.net/mercurial-server/ et je viens de terminer sa configuration :-)

vendredi, septembre 12 2008

Hg ou Svn ? That is the question...

Vu que je bosse sur le code de Mozilla, je suis bien obligé d'utiliser Mercurial. Et plus j'utilise, plus j'adore. Surtout son système de pile de patch (l'extension Mq).

Se pose à moi alors la question : pour mon projet Jelix, devrais-je remplacer totalement Subversion par Mercurial ? Ou simplement utiliser Mercurial en local avec hgsvn qui me permettrait de mettre à jour mon dépot Mercurial local à partir du dépot Subversion central ?

En fait, personnellement, je n'ai pas de souci à utiliser Mercurial, bien au contraire, il apporte beaucoup de chose. Mais c'est vis à vis des contributeurs, et surtout des contributeurs potentiels. Je trouve l'utilisation d'un système de gestion de version distribué un poil plus compliquée qu'un centralisé comme Subversion, avec des concepts pas forcément évident à appréhender, surtout quand on est habitué à Subversion ou CVS. En clair, j'ai peur qu'imposer l'utilisation de Mercurial fasse peur (Déjà que j'ai l'impression que l'utilisation d'un outil de versionning ne semble pas encore être la norme en entreprise et que j'ai rencontré pas mal de développeurs web qui savaient à peine ce que c'était que cvs, svn...).

Mais peut-être me fais-je des idées ?

Et vous, qu'en pensez-vous ?

vendredi, juin 20 2008

Un nouveau depôt pour jelix

Le projet Jelix était initialement hébergé sur la plateforme developer.berlios.de. Mais petit à petit, à cause d'une qualité moyenne de l'hébergement, et parce que Nicolas me prête un peu de sa dedibox, j'ai migré certaines choses de berlios vers le serveur jelix.org. Ça d'abord été le site principal (berlios trop chargé), puis abandon du bugtracker (trop simpliste) après installation d'un trac sur http://developer.jelix.org.

Je gardais toutefois le dépôt subversion sur berlios, par flemme de migrer d'abord, mais ensuite parce que ça animait les stats d'activité du projet, donnant alors en principe une certaine visibilité au projet. Mais les problèmes récurrents d'accès aux dépôts subversions ces dernières semaines m'ont fait prendre la décision de migrer, d'autant plus que ces stats n'ont finalement rien apporté en 2 ans.

Bref donc, à coup de svndump et svn load, le dépôt est maintenant sur svn.jelix.org. On a donc maintenant un accès plus rapide, et plus fiable normalement :-).

Les fichiers en téléchargement et les mailing lists restent par contre sur berlios pour le moment.

Je vais aussi certainement ouvrir en partie le dépôt subversion des fichiers des sites *.jelix.org[1] , en espérant avoir quelques contributeurs qui m'aideront à les faire évoluer. Il y a de plus en plus de chose à faire dessus (notamment l'intégration d'un site de "snippets" codé avec Jelix qui ouvrira dans les prochaines semaines), mais mon temps disponible, lui, ne s'allonge pas. Si au passage il y a des volontaires...

Notes

[1] j'ai du nettoyage à faire d'abord dans ce dépôt, comme cacher les fichiers sensibles, mettre à jour les cartouches de licence sur les trucs "fait maison" etc

mardi, décembre 12 2006

S'il vous plait, oubliez tous CVS

Plus j'utilise Subversion, plus je hais CVS[1] (qu'il faut bien que j'utilise, par exemple pour Mozilla). Avec subversion, les commandes sont simples et relativement intuitives, sans 50 paramètres à ajouter pour faire un truc normal. Avec CVS, c'est un cauchemar.

Tenez par exemple, j'ai modifié un fichier. Je veux annuler les modifications, donc revenir à la version que j'avais téléchargée du dépot. Avec subversion, c'est trés simple : svn revert nom_du_fichier. Et sans avoir à contacter le serveur. Avec CVS.. On ne peut pas. Du moins pas directement (effacer le fichier, regarder dans le fichier entries pour avoir le numéro de version, faire un CVS update avec ce numéro...). Et faut être connecté.

Au passage, vivement que Mozilla abandonne CVS. C'est d'ailleurs ce qu'ils prévoient. Depuis quelques semaines, ils étudient sérieusement d'autres systèmes de gestion de versions. Mais pas évident de choisir vu les prérequis. Subversion pourrait être un bon candidat, mais d'autres aussi : c'est un véritable "combat mortel" entre chaque solution existante :-)

Notes

[1] CVS et Subversion sont des gestionnaires de versions de fichiers)