Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Journal : Git ou Mercurial ?

Posté par Bruno Michel (Jabber id, page perso, ) le 14 février 2008

Cher journal,

voici mes réflexions sur les DSCM (Distributed Source Code Management), enfin surtout Git et Mercurial, et tant qu'à faire, j'aimerais bien avoir ton avis sur la question.

Je vais attaquer un projet pour lequel je vais utiliser un DSCM (non, je n'ai vraiment pas envie d'utiliser Subversion), et je me suis donc penché sur le sujet. D'un point de vue technique, les 2 gagnants sont Git et Mercurial. Du moins, c'est l'impression que j'en ai, et elle est partagée avec d'autres personnes avec qui j'en ai discuté. Je ne nie pas que les autres (darcs, bazaar-ng, etc.) aient des qualités, mais ils m'intéressent moins que Git et Mercurial. Coté Mercurial, je vois comme avantage le fait que je l'ai déjà utilisé (ce qui n'est pas le cas de Git) et que son utilisation est réputée plus simple. Ca ne fait pas très lourd, surtout qu'on m'a dit que Git a fait de gros progrès sur ce point avec les dernières versions.

De l'autre coté, j'ai l'impression que Git est en train de marquer des points dans la guerre des DSCM, et de venir de plus en plus populaire. Depuis les annonces de Mozilla et OpenSolaris, je ne crois pas avoir croisé beaucoup de projets qui utilisent Mercurial, alors que je vois régulièrement des dépôts Git (utilisé pour du code, mais aussi pour du packaging et de la doc). Du coté des hébergeurs, même topo : Tuxfamily a récemment annoncé le support des dépôts Git, et je connais des hébergeurs spécialisés dans Git comme GitHub, mais pour Mercurial, je ne pense pas en avoir croisé.

Dans la communauté Ruby on Rails, cela me semble encore plus frappant. La manière plus ou moins officielle de distribuer des plugins est d'offrir un accès anonyme à un dépôt svn (en lecture seule, l'accès). Mais plusieurs développeurs de plugins connus utilisent Git pour développer les plugins, et synchronisent le svn juste pour les releases. Il existe également des projets visant à utiliser les plugins quand on utilise Git (comme Giston ou Git-rails). Il me semble que capistrano possède également un module pour Git. Et pour Mercurial ? je n'ai rien vu, mais alors rien de rien.

Bref, j'ai l'impression que Git est en train d'écraser la concurrence, ce qui veut dire que le développement de Git va surement avancer plus vite que celui de Mercurial, qu'on trouvera de plus en plus d'outils pour Git, et surtout, que des potentiels contributeurs auront plus de chances de connaitre Git que Mercurial. Je pense que je vais choisir Git surtout pour ce dernier point, car j'espère attirer des contributeurs dans les prochains mois et je ne voudrais que le DSCM soit le moins possible un point de bloquage.

Et vous, chers lecteurs, vous-en pensez quoi ?

> Lire le journal (111 commentaires, moyenne: 2,5).  

Vous avez demandé le commentaire #904465.

cogito

Posté par ploum (page perso, ) le 14/02/2008 à 09:39. (lien). Évalué à 1.

A tout hasard, je me permet de te mettre un truc trouvé par hasard en jouant avec openmoko : cogito ( http://git.or.cz/cogito/ )

C'est une interface simplifiée à Git, ça semble intéressant.

  • [^]Re: cogito

    Posté par Jérôme Pinot (page perso, ) le 14/02/2008 à 10:17. (lien). Évalué à 5.

    Git a fusionné les fonctions de Cogito depuis plus d'un an. Ce projet ne sert plus a grand chose et n'est plus développé. Git a une interface simplifiée maintenant.

    • [^]Re: cogito

      Posté par ploum (page perso, ) le 14/02/2008 à 10:43. (lien). Évalué à 3.

      merci pour l'info, je connais pas du tout git mais j'ai vu passé ce package. Voilà, c'était juste une tentative (dérisoire ) pour me rendre utile

    [^]Re: cogito

    Posté par tripa () le 14/02/2008 à 10:18. (lien). Évalué à 2.

    cogito est reputé obsolète et non maintenu. Cf http://git.or.cz/#tools