Comparatif forges

De April MediaWiki
Aller à la navigationAller à la recherche


Cette page est un essai pour une analyse comparative de « forges ».

Page rédigée autour du 08 décembre 2014.

Cette page n'engage que Cpm.


Ambox warning red construction.png
/!\ Travail en cours /!\

Cette page présente une page de suivi en cours de réalisation.

Si vous souhaitez participer, n'hésitez pas à laisser votre avis sur la page de discussion en suivant au mieux ces recommandations.



Contexte

Au sein de l'April, de nombreux projets sont implémentés. Les sources de ces projets sont plutôt « dispersés » et plus ou moins accessibles. Même si « communiquer » suffit à en avoir l'accès, peut-être pourrait-il être « utile » à l'April de regrouper ses dépôts projets sur une seule et même forge.

Dans l'idée, pourquoi pas. Une première condition est de répondre à la question : « Oui, une forge ... laquelle ? ».

Au delà de l'April, le besoin de s'y retrouver entre les différentes forges, ce besoin est commun à tous. Et alors, il est intéressant d'avoir un angle de vision orienté « Logiciel libre ».

L'idée de cette page est de proposer une analyse comparative permettant à tous de se faire une idée pour choisir sa forge.

Recensement

Des comparatifs existent déjà :

L'idée, ici, est d'en refaire un axé « Logiciel Libre ».

Parmi les forges existantes, on trouve (par ordre alphabétique) :

  1. BitBucket :
  2. GitHub
    • Licence : privateur
    • Présentation :
  3. GitLab : (voir Le cas GitLab)
    • au début, une copie de GitHub mais libre, maintenant bien différencié,
    • depuis 2012, version hostée gratuite : GitLab.com (http://gitLab.com/)
    • depuis juillet 2013, split en GitLab CE et GitLab EE, GitLab.com est alors sous GitLab CE [1]
    • depuis février 2014, GitLab EE = GitLab CE + code privateur = licence privatrice, accès payant [2]
    • depuis juin 2014, GitLab.com passe de GitLab CE à GitLab EE [3]
    • en octobre 2014, GitLab B.V. reconnait avoir adopté le model open-core depuis 2013[4]
  4. GitLab.com :
  5. GitLab CE :
  6. Gitorious :
  7. Savannah (non GNU) :
  8. Gna!
  9. SourceForge :
  10. Framagit :
  11. Gogs :


Tableau récapitulatif
Nom Depuis Licence SVN Git Issue
tracker
Service
en ligne
Installable
chez soi
Web
hooks
BitBucket 2008 Privateur Non Oui Oui https://bitbucket.org/ Non Oui
GitHub 2008 Privateur Non Oui Oui https://github.com/ Non Oui
GitLab.com 2011 MIT Expat + privateur Non Oui Oui http://gitlab.com/ GitLab EE payant Oui
GitLab CE 2011 MIT Expat Non Oui Oui  Non Oui restreint
Gitorious 2008 AGPL Non Oui Non https://gitorious.org/ Oui Oui
Savannah (non GNU) 2001 GNU GPL Oui Oui Oui http://savannah.nongnu.org/ Oui ?
Gna! 2004 GNU AGPL Oui Oui Oui http://gna.org/ Oui ?
SourceForge 1999 Apache Oui Oui Oui https://sourceforge.net/ Oui ?
Framagit 2015 MIT Expat Non Oui Oui https://git.framasoft.org/ Oui ?
Gogs 2015 MIT Non Oui Oui Non Oui ?

Comparaison

Le but de cette partie est de lister les avantages et inconvénients de chaque solution recensée.

Quelques principes :

  • oui, les énoncés nécessairement sont subjectifs ;
  • toujours avoir au moins un avantage et un inconvénient (en cherchant bien, on arrive toujours à en trouver, la pertinence importe alors peu).
Solutions Avantages Inconvénients
BitBucket + très connu
+ gratuit
- logiciel privateur
- non installable chez soi
GitHub + très connu
+ très regardé
+ gratuit
- logiciel privateur
- non installable chez soi
GitLab CE + logiciel libre 100%
+ ergonomie super sexy
+ gratuit
- model open-core (code non libre sans plugin)
- version édulcorée de GitLab EE
- stratégie douteuse de GitLab B.V. envers le libre
- pas de Saas en ligne (=> administrer soi-même)
GitLab.com + ergonomie super sexy
+ repose majoritairement sur GitLab CE
+ gratuit
+ installable chez soi
- model open-core (code non libre sans plugin)
- contient du code privateur
- payant
Gitorious + une licence exemplaire (GNU AGPL) - absence d'Issue Tracker
- ergonomie peu sexy
Savannah (non GNU) + logiciel libre 100%
+ compatible SVN
- ergonomie ancienne et faible
Gna! + logiciel libre 100%
+ compatible SVN
- ergonomie ancienne et faible
SourceForge + logiciel libre
+ acteur historique
+ compatible SVN
- licence mouvementée
- ergonomie vieille et faible
- lenteur récurrente
Framagit + logiciel libre
+ maintenance déléguée
+ ergonomie sexy
- dépendance à la gouvernance de GitLab
Gogs + logiciel libre - dépendance à Go (à google ?)
- jeune
- qui est derrière ?

Élection

Cette étape consiste à faire un tri dans les solutions : ne retenir que les avantages et inconvénients majeurs puis en faire un avis (négatif ou positif) argumenté.

Solutions Avis Commentaire
BitBucket Non C'est un logiciel privateur.
GitHub Non C'est un logiciel privateur.
GitLab.com Non Stratégie open-core (code non libre sans plugin). Voir Le cas GitLab
GitLab CE Non À installer/administrer soi-même
Stratégie open-core (code non libre sans plugin). Voir Le cas GitLab
Gitorious Non Absence d'un Issue Tracker
gestion de groupes ?
Ergonomie non sexy
Savannah (non GNU) Moui Librisme assuré mais ergonomiquement peu sexy :-(
Gna! Moui Librisme assuré mais ergonomiquement peu sexy :-(
SourceForge Non Instabilité licence
Ergonomie non sexy
Lenteurs
Framagit Moui Libre même dépendance à GitLab
Ergonomie sexy
Délégation de la maintenance
Gogs Non Trop jeune, dépendance à GO, quelle structure derrière ?

Résultats

Cette étape consiste à énoncer le ou les finalistes.

J'avoue, au début, je voulais mettre en avant GitLab, parce-que super-sexy et libre. Et donc, comme il était super, me conforter en le confrontant dans une analyse comparative.

Mais voilà, GitLab ont adopté l'open-core. Cet essai aura au moins permis que je m'en rende compte. Alors, en plus des conséquences personnelles et professionnelles, je ne peux plus décemment mettre GitLab en avant ici.

Restent les historiques (Savannah (non GNU) et Gna!), éthiquement pérennes, mais ergonomiquement « faibles », encore plus avec GIT. À noter une tentative de ré-écriture de Savanne, peut-être plus moderne ergonomiquement et fonctionnellement, un jour.

Y a bien Gitorious mais sans Issue Tracker, avec ses délais et sa charte graphique « moche », bof. Depuis son rachat par GitLab, la question ne se pose plus.

En l'absence de candidat sortant du lot, je conclue à l'absence de finaliste et au report d'un éventuel choix/recommandation.

Par défaut, malgré les questionnements sur la gouvernance du projet, le recours à Framagit pourrait être une solution.

Nota Bene du 04 mars 2015

Annonce officiel du 03 mars 2015 : https://about.gitlab.com/2015/03/03/gitlab-acquires-gitorious/

« GitLab acquires Gitorious to bolster its on premises code collaboration platform [...] “At Gitorious we saw more and more organizations adopting GitLab. Due to decreased income from on-premises customers, running the free Gitorious.org was no longer sustainable. GitLab was solving the same problem that we were, but was solving it better.” [...] Gitorious.org will stay online until the end of May 2015 to give people time to migrate their repositories. »

L'alternative vraiment libre et éthique disparait. La situation s'aggrave...