Git ou Mercurial lequel choisir ? Les deux mon général !

Publié par Yannick Francois Dim 04 avr 2010 20:44:00 GMT

Git Logo

Voici le nième billet que l'on peut trouver sur Git et Mercurial.

On pourrais énumérer les différences entre les deux pour pouvoir choisir, mais Why Git Is Better Than X le fait assez bien (quoique, on peut douter de l'impartialité ;-)).

On pourrais aussi choisir mercurial pour l'executable en deux lettres (hg) au lieu de git qui en contient trois (git)...

Un petit plus pour Mercurial, en tant que client en tout cas. effectivement, grace à ce plugin hg-git un utilisateur de mercurial pourra partager avec des utilisateurs de Git. Je en suis pas sur que l'inverse existe.

Un autre point me dit que finalement on peut très bien ce servir des deux dans un même projet. C'est une discussion dans un TGV de retour de Strasbourg et le billet MercurialSquashCommit de Martin Fowler qui eveil ma curiosité. J'ai l'impression que travailler par patch permet également d'utiliser n'importe quelle DVCS, à condition bien sur que celui-ci propose une création de patch facilité. Il me semble que Git propose avec la commande git-diff voir git-format-patch permet une gestion très interessante des patchs. Mercurial a également une gestion interessante par le biais de l'extension MQ.

Mais j'ai besoin de faire quelque essais avant d'être persuadé (pour l'un et/ou l'autre). Promis, je vous en reparle quand c'est fait.

Alors utiliser, Git, Mercurial ou un autre, peut importe tant que l'équipe arrive à trouver un rythme et un processus qui lui convient ;-)

Mercurial Logo

JRuby sur Git

Publié par Yannick Francois Mar 14 avr 2009 08:21:00 GMT

Après avoir déménagé le gestionnaire de projet de CodeHaus à Kenai (la forge selon Sun), JRuby change de gestionnaire de version pour passer de Subversion à Git

L’annonce de Headius: JRuby moves to Git

ça va forker !

Git ou Mercurial 7

Publié par Yannick Francois Lun 22 déc 2008 08:48:00 GMT

Cela fait un moment qu’un nouveau troll à pointé son nez. Après vim versus emacs, gnome versus kde et tant d’autres, on a maintenant git versus mercurial.

Derrière ces deux noms se cache un outil de gestion de versions. Contrairement à CVS ou SubVersion ces deux là (et quelques autres) sont dit décentralisé. Ce mode permet de nouvelles possibilités dans la manière dont les équipes travaillent.

On trouve beaucoup de comparatif entre ces deux outils, et je ne suis pas convaincu par les uns ou les autres. Pour moi les seules différences que je vois aujourd’hui c’est:

  • langage source : Git est écrit en C, Mercurial en Python
  • Commande: Git utilise trois lettre git, Mercurial en utilise deux hg

Une des grandes forces de la communauté des utilisateurs de Git est d’avoir eu très rapidement accès à un outil d’hébergement : github . De plus, l’équipe du framework RubyOnRails ayant adopté Git, la communauté Rails l’a également adopté. Bien sur, beaucoup d’autres projets utilisent Git, notamment le noyau Linux.

Mais Mercurial n’est pas en reste (contrairement à ce que l’on pourrait croire).

La communauté d’utilisateur de Mercurial a également un outil d’hébergement: bitbucket ou encore freeHg, et pour ce qui est des projets phare ayant choisi mercurial on retrouve mozilla , NetBeans , OpenJDK , OpenSolaris, Xen , et beaucoup d’autres

Pour le moment mon choix c’est porté sur Mercurial (allez savoir pourquoi). Cependant, je crois qu’avant de faire un choix définitif, il me faut apprendre à me servir des deux. Je me suis donc créé un compte sur GitHub, un sur BitBucket et un sur freeHg. GitHub et BitBucket propose tout deux une utilisation de type premium. Par exemple:

  • GitHub propose un nombre illimité de repository public associé à un nombre illimité de collaborateur le tout avec 100MB d’espace disque. Ensuite c’est une location par mois avec une augmentation des repository privée associé à un nombre restreint de collaborateur et une augmentation de l’espace disque disponible.
  • BitBucket propose lui un repository privé et un nombre illimité de repository public le tout devant tenir sur 150 MB. Ensuite, ce sont des tarifs par MB et fonction du nombre de repository privée.

Ces deux là sont partis sur des offres payantes assez différentes. Chacune d’entre elle peut avoir sont intérêt selon les besoins.

  • freeHg semble plus libre en apparence (je n’ai rien vu au sujet de ma carte bleu, à part un bouton donate). Par contre il impose l’utilisation de licence libre pour les projets hébergé, et décline toute responsabilité en cas de problème.

Pour être honnête, je viens de découvrir freeHg en écrivant ce billet… Je crois que tout ceci est un peu frais pour moi, je vous en dirais plus quand j’aurais manipulé un peu.