« Comparatif forges » : différence entre les versions
mAucun résumé des modifications |
m (→Contexte) |
||
(52 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
[[catégorie:Admin_sys]] | [[catégorie:Admin_sys]] | ||
{{Introduction|Cette page est | {{Introduction|Cette page est un essai pour une analyse comparative de « forges ».<br/> | ||
Page rédigée autour du 08 décembre 2014.<br/> | |||
Cette page n'engage que Cpm.}} | |||
{{Travail En Cours|contenu=une page de suivi}} | {{Travail En Cours|contenu=une page de suivi}} | ||
Ligne 9 : | Ligne 11 : | ||
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. | 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 | 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 ». | 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 ». | ||
Ligne 15 : | Ligne 17 : | ||
L'idée de cette page est de proposer une analyse comparative permettant à tous de se faire une idée pour choisir sa forge. | L'idée de cette page est de proposer une analyse comparative permettant à tous de se faire une idée pour choisir sa forge. | ||
Des comparatifs existent déjà : | Des comparatifs existent déjà : | ||
* http://en.wikipedia.org/wiki/Comparison_of_open-source_software_hosting_facilities | * http://en.wikipedia.org/wiki/Comparison_of_open-source_software_hosting_facilities | ||
* https://forge-allura.apache.org/p/allura/wiki/Feature%20Comparison/ | * https://forge-allura.apache.org/p/allura/wiki/Feature%20Comparison/ | ||
* http://linuxfr.org/users/ife/journaux/pourquoi-github-saimal-quelques-alternatives | |||
L'idée, ici, est d'en refaire un axé « Logiciel Libre ». | L'idée, ici, est d'en refaire un axé « Logiciel Libre ». | ||
Parmi les forges existantes, on trouve (par ordre alphabétique) : | Note : en 2020, la FSF a lancé une étude, https://libreplanet.org/wiki/FSF_2020_forge_evaluation | ||
== Recensement == | |||
Parmi les forges existantes, on trouve ('''par ordre alphabétique''') : | |||
# BitBucket : | # BitBucket : | ||
#* Licence : privateur | |||
#* Site web : https://bitbucket.org/ | #* Site web : https://bitbucket.org/ | ||
#* Présentation : | #* Présentation : | ||
#** http://en.wikipedia.org/wiki/Bitbucket | #** http://en.wikipedia.org/wiki/Bitbucket | ||
#** https://bitbucket.org/features | #** https://bitbucket.org/features | ||
#* Licence : | # | ||
# | |||
# Framagit : | |||
#* Site web : https://git.framasoft.org/ | |||
#* Présentation : http://framacode.org/gitlab.php | |||
#* note : instance GitLab CE hébergé et maintenue par Framasoft | |||
# | |||
# | |||
# Gitea : | |||
#* Licence : MIT | |||
#* fork de Gogs : https://blog.gitea.io/2016/12/welcome-to-gitea/ | |||
#* Depuis : 12/2016 | |||
#* Site web : https://gitea.io/ | |||
#* Présentation : https://en.wikipedia.org/wiki/Gitea | |||
#* Site démo : https://try.gitea.io/ | |||
#* Note : l'installation consiste en un seul fichier binaire et une arborescence de dossiers, port dédiée configurable | |||
# | |||
# | |||
# GitHub | # GitHub | ||
#* Licence : privateur | #* Licence : privateur | ||
#* Présentation : | #* Présentation : | ||
# | |||
# | |||
# GitLab : (voir [[Le cas GitLab]]) | # GitLab : (voir [[Le cas GitLab]]) | ||
#* au début, une copie de GitHub mais libre, maintenant bien différencié, | #* au début, une copie de GitHub mais libre, maintenant bien différencié, | ||
#* depuis 2012, version hostée gratuite : http://gitLab.com/ | #* depuis 2012, version hostée gratuite : GitLab.com (http://gitLab.com/) | ||
#* depuis juillet 2013, split en GitLab CE et GitLab EE, | #* depuis juillet 2013, split en GitLab CE et GitLab EE, GitLab.com est alors sous GitLab CE [https://about.gitlab.com/2013/07/22/announcing-gitlab-enterprise-edition/] | ||
#* depuis février 2014, GitLab EE = GitLab CE + code privateur, accès payant [https://about.gitlab.com/2014/02/11/gitlab-ee-license-change/] | #* depuis février 2014, GitLab EE = GitLab CE + code privateur = licence privatrice, accès payant [https://about.gitlab.com/2014/02/11/gitlab-ee-license-change/] | ||
#* depuis juin 2014, | #* depuis juin 2014, GitLab.com passe de GitLab CE à GitLab EE [https://about.gitlab.com/2014/06/27/gitlab-com-runs-ee/] | ||
#* en octobre 2014, GitLab B.V. reconnait avoir adopté le model open-core depuis 2013[https://about.gitlab.com/2014/10/08/letter-from-shareholders/] | |||
# | |||
# | |||
# GitLab.com : | # GitLab.com : | ||
#* Site web : http://gitlab.com/ | #* Site web : http://gitlab.com/ | ||
#* Licence : privatrice [https://gitlab.com/snippets/26], GitLab | #* Licence : privatrice [https://gitlab.com/snippets/26], GitLab.com ≈ GitLab EE = GitLab CE + code privateur, le code de GitLab CE reste sous licence MIT Expat | ||
#* Business plan : faire du logiciel privateur pour faire du logiciel libre (mais bien sûr…) | |||
#* Présentation : | #* Présentation : | ||
#** https://gitlab.com/help | #** https://gitlab.com/help | ||
#** https://about.gitlab.com/gitlab-com/ | #** https://about.gitlab.com/gitlab-com/ | ||
# | |||
# | |||
# GitLab CE : | # GitLab CE : | ||
#* Licence : MIT (https://gitlab.com/gitlab-org/gitlab-ce/blob/master/LICENSE) | #* Licence : MIT Expat (https://gitlab.com/gitlab-org/gitlab-ce/blob/master/LICENSE) | ||
#* Présentation : https://gitlab.com/gitlab-org/gitlab-ce/blob/master/README.md | #* Présentation : https://gitlab.com/gitlab-org/gitlab-ce/blob/master/README.md | ||
#* Sources : https://gitlab.com/gitlab-org/gitlab-ce | #* Sources : https://gitlab.com/gitlab-org/gitlab-ce | ||
#* Note : pas de version hostée gratuite sur le web | #* Note : pas de version hostée gratuite sur le web | ||
# | |||
# | |||
# Gitorious : | # Gitorious : | ||
#* Licence : GNU AGPL | |||
#* Depuis : janvier 2008 | #* Depuis : janvier 2008 | ||
#* Fin : mars 2015 suite au rachat par GitLab, | |||
#* Business plan : un produit libre et des services professionnels payant autour ; | #* Business plan : un produit libre et des services professionnels payant autour ; | ||
#* Présentation : | #* Présentation : | ||
#** https://gitorious.org/gitorious/pages/Home | #** https://gitorious.org/gitorious/pages/Home | ||
#** http://en.wikipedia.org/wiki/Gitorious | #** http://en.wikipedia.org/wiki/Gitorious | ||
# | # | ||
# | # | ||
# Gna! | # Gna! | ||
#* Licence : GNU AGPL [http://git.savannah.gnu.org/cgit/savane-cleanup.git/tree/COPYING] | |||
#* Depuis : 1989? | |||
#* Fin : 2004 | |||
#* Site web : http://gna.org/ | #* Site web : http://gna.org/ | ||
#* Powererd by : Savane 3.1-cleanup | #* Powererd by : Savane 3.1-cleanup | ||
#* Sources : http://savannah.nongnu.org/projects/savane-cleanup | #* Sources : http://savannah.nongnu.org/projects/savane-cleanup | ||
#* Présentation : http://about.gna.org/ | #* Présentation : http://about.gna.org/ | ||
# | |||
# | |||
# Gogs : | |||
#* Licence : MIT | |||
#* Depuis : 02/2015 | |||
#* Site web : https://gogs.io/ | |||
#* Présentation : https://fr.wikipedia.org/wiki/Gogs_%28logiciel%29 | |||
#* Site démo : https://try.gogs.io/ | |||
# | |||
# | |||
# Onedev : | |||
#* Licence : MIT [https://github.com/theonedev/onedev/blob/master/license.txt] | |||
#* Site web : https://code.onedev.io/ | |||
#* Description : https://github.com/theonedev/onedev | |||
#* Note : un seul développeur, fait en Java | |||
# | |||
# | |||
# Savannah (non GNU) : | |||
#* Licence : GNU GPL [http://git.savannah.gnu.org/cgit/administration.git/tree/COPYING] | |||
#* Site web : http://savannah.nongnu.org/ | |||
#* Powererd by : Savane 3.1-cleanup (« Note: GNU Savannah itself is currently running a fork for unknown reasons, cf. the 'administration' project » [http://savannah.nongnu.org/projects/savane-cleanup]) | |||
#* Sources : http://savannah.gnu.org/projects/administration | |||
# | |||
# | |||
# SourceForge : | # SourceForge : | ||
#* Site web : https://sourceforge.net/ | #* Site web : https://sourceforge.net/ | ||
Ligne 83 : | Ligne 141 : | ||
#** https://sourceforge.net/projects/sourceforge/ | #** https://sourceforge.net/projects/sourceforge/ | ||
#** https://sourceforge.net/projects/allura/ | #** https://sourceforge.net/projects/allura/ | ||
# | |||
# | |||
# Trac : | |||
#* Licence : pseudo BSD License [https://trac.edgewall.org/wiki/TracLicense] | |||
#* Site web : https://trac.edgewall.org/ | |||
#* Démo : https://trac.edgewall.org/demo-1.2/ | |||
===== Récapitulatif ===== | |||
{| class="wikitable" style="text-align: center;" | {| class="wikitable" style="text-align: center;" | ||
|+ Tableau récapitulatif | |+ Tableau récapitulatif | ||
! Nom !! Depuis !! Licence !! SVN !! Git !! Issue<br/>tracker !! Service<br/>en ligne !! Installable<br/>chez soi !! Web<br/>hooks | ! Nom !! Depuis !! Fin !! Licence !! SVN !! Git !! Issue<br/>tracker !! Service<br/>en ligne !! Installable<br/>chez soi !! Web<br/>hooks | ||
|- | |||
| BitBucket || 2008 || {{Oui|actif}} || {{Non|Privateur}} || {{non}} || {{oui}} || {{oui}} || {{oui|https://bitbucket.org/}} || {{non}} || {{oui}} | |||
|- | |||
| Framagit || 2015 || {{Oui|actif}} || {{Oui|MIT Expat}} || {{non}} || {{oui}} || {{oui}} || {{Oui|https://git.framasoft.org/}} || {{oui}} || ? | |||
|- | |- | ||
| | | Gitea || 2016 || {{Oui|actif}} || {{Oui|MIT}} || {{non}} || {{oui}} || {{oui}} || {{Non}} || {{oui}} || ? | ||
|- | |- | ||
| GitHub || 2008 || {{Non|Privateur}} || {{non}} || {{oui}} || {{oui}} || {{oui|https://github.com/}} || {{non}} || {{oui}} | | GitHub || 2008 || {{Oui|actif}} || {{Non|Privateur}} || {{non}} || {{oui}} || {{oui}} || {{oui|https://github.com/}} || {{non}} || {{oui}} | ||
|- | |- | ||
| GitLab.com || 2011 || {{Non|MIT Expat + privateur}} || {{non}} || {{oui}} || {{oui}} || {{oui | http://gitlab.com/}} || {{oui|GitLab EE payant}} || {{oui}} | | GitLab.com || 2011 || {{Oui|actif}} || {{Non|MIT Expat + privateur}} || {{non}} || {{oui}} || {{oui}} || {{oui | http://gitlab.com/}} || {{oui|GitLab EE payant}} || {{oui}} | ||
|- | |- | ||
| GitLab CE || 2011 || {{Oui|MIT Expat}} || {{non}} || {{oui}} || {{oui}} || {{non}} || {{oui}} || {{oui|restreint | | GitLab CE || 2011 || {{Oui|actif}} || {{Oui|MIT Expat}} || {{non}} || {{oui}} || {{oui}} || {{non}} || {{oui}} || {{oui|restreint}} | ||
|- | |||
| Gitorious || 2008 || {{Non|2015}} || {{Oui|AGPL}} || {{non}} || {{oui}} || {{non}} || {{oui|https://gitorious.org/}} || {{oui}} || {{oui}} | |||
|- | |- | ||
| | | Gna! || 2004 || {{Non|2017}} || {{Oui|GNU AGPL}} || {{oui}} || {{oui}} || {{oui}} || {{oui|http://gna.org/}} || {{oui}} || ? | ||
|- | |- | ||
| | | Gogs || 2015 || {{Oui|actif}} || {{Oui|MIT}} || {{non}} || {{oui}} || {{oui}} || {{Non}} || {{oui}} || {{oui}} | ||
|- | |- | ||
| | | Onedev || ? || {{Oui|actif}} || {{Oui|MIT}} || {{non}} || {{oui}} || {{oui}} || {{non}} || {{oui}} || ? | ||
|- | |- | ||
| SourceForge || 1999 || {{Oui|Apache}} || {{oui}} || {{oui}} || {{Oui}} || {{oui}} || {{oui}} || ? | | Savannah (non GNU) || 2001 || {{Oui|actif}} || {{Oui|GNU GPL}} || {{oui}} || {{oui}} || {{oui}} || {{oui|http://savannah.nongnu.org/}} || {{oui}} || ? | ||
|- | |||
| SourceForge || 1999 || {{Oui|actif}} || {{Oui|Apache}} || {{oui}} || {{oui}} || {{oui}} || {{Oui|https://sourceforge.net/}} || {{oui}} || ? | |||
|- | |||
| Trac || ? || {{Oui|actif}} || {{Oui|BSD*}} || {{oui}} || {{oui}} || {{oui}} || {{Non}} || {{oui}} || ? | |||
|} | |} | ||
Ligne 112 : | Ligne 187 : | ||
Quelques principes : | Quelques principes : | ||
* oui, les énoncés nécessairement sont subjectifs ; | * 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). | * toujours avoir au moins un avantage et un inconvénient (en cherchant bien, on arrive toujours à en trouver, la pertinence importe alors peu). | ||
{| class="wikitable" | {| class="wikitable" | ||
Ligne 120 : | Ligne 195 : | ||
| + très connu<br/>+ gratuit | | + très connu<br/>+ gratuit | ||
| - logiciel privateur<br/> - non installable chez soi | | - logiciel privateur<br/> - non installable chez soi | ||
|- | |||
| Framagit | |||
| + logiciel libre<br/>+ maintenance déléguée<br/>+ ergonomie sexy | |||
| - dépendance à la gouvernance de GitLab | |||
|- | |||
| Gitea | |||
| + logiciel libre<br/>+ léger<br/>+ un seul fichier à installer | |||
| - dépendance à Go de Google | |||
|- | |- | ||
| GitHub | | GitHub | ||
Ligne 127 : | Ligne 210 : | ||
| GitLab CE | | GitLab CE | ||
| + logiciel libre 100%<br/> + ergonomie super sexy<br/> + gratuit | | + logiciel libre 100%<br/> + ergonomie super sexy<br/> + gratuit | ||
| - version édulcorée de GitLab EE | | - model open-core (code non libre sans plugin)<br/> - version édulcorée de GitLab EE<br/>- stratégie douteuse de GitLab B.V. envers le libre<br/>- pas de Saas en ligne (=> administrer soi-même) | ||
|- | |- | ||
| GitLab.com | | GitLab.com | ||
| + ergonomie super sexy<br/> + repose majoritairement sur GitLab CE<br/> + gratuit<br/> + installable chez soi | | + ergonomie super sexy<br/> + repose majoritairement sur GitLab CE<br/> + gratuit<br/> + installable chez soi | ||
| - contient du code privateur<br/> - payant | | - model open-core (code non libre sans plugin)<br/> - contient du code privateur<br/> - payant | ||
|- | |- | ||
| Gitorious | | Gitorious | ||
| + une licence exemplaire (GNU AGPL) | | + une licence exemplaire (GNU AGPL) | ||
| - absence d'Issue Tracker | | - n'est plus disponible<br/>- absence d'Issue Tracker<br/>- ergonomie peu sexy | ||
|- | |- | ||
| Savannah (non GNU) | | Savannah (non GNU) | ||
| + logiciel libre 100% | | + logiciel libre 100%<br/>+ compatible SVN | ||
| - | | - ergonomie ancienne et faible | ||
|- | |- | ||
| Gna! | | Gna! | ||
| + logiciel libre 100% | | + logiciel libre 100%<br/>+ compatible SVN | ||
| - | | - n'est plus disponible<br/>- ergonomie ancienne et faible | ||
|- | |||
| Gogs | |||
| + logiciel libre<br/>+ léger | |||
| - dépendance à Go de Google | |||
|- | |||
| OneDev | |||
| + logiciel libre<br/>+ léger | |||
| - un seul développeur | |||
|- | |- | ||
| SourceForge | | SourceForge | ||
| + logiciel libre<br/>+ acteur historique<br/>+ compatible SVN | |||
| - licence mouvementée<br/>- ergonomie vieille et faible<br/>- lenteur récurrente | |||
|- | |||
| Trac | |||
| + logiciel libre | | + logiciel libre | ||
| - | | - peu connu, peu utilisé | ||
|} | |} | ||
== Élection == | == É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é. | |||
{| class="wikitable" | {| class="wikitable" | ||
! Solutions !! Avis !! Commentaire | ! Solutions !! Avis !! Commentaire | ||
|- | |- | ||
| BitBucket || {{non}} || C'est un logiciel privateur. | | BitBucket || {{non}} || C'est un logiciel privateur. | ||
|- | |||
| Framagit || {{non}} || Incertitude sur l'avenir, délégation de la maintenance. | |||
|- | |||
| Gitea || {{Moui}} || Dépendance à GO de Google, très léger, facile à installer. | |||
|- | |- | ||
| GitHub || {{Non}} || C'est un logiciel privateur. | | GitHub || {{Non}} || C'est un logiciel privateur. | ||
|- | |- | ||
| GitLab.com || {{ | | GitLab.com || {{Non}} || Stratégie open-core (code non libre sans plugin). Voir [[Le cas GitLab]]. | ||
|- | |||
| GitLab CE || {{Non}} || À installer/administrer soi-même<br/>Stratégie open-core (code non libre sans plugin). Voir [[Le cas GitLab]]. | |||
|- | |||
| Gitorious || {{Non}} || '''N'est plus disponible…'''<br/>Absence d'un Issue Tracker<br/>gestion de groupes ?<br/>Ergonomie non sexy. | |||
|- | |- | ||
| | | Gna! || {{Non}} || '''N'est plus disponible…'''<br/>Librisme assuré mais ergonomiquement peu sexy :-( | ||
|- | |- | ||
| | | Gogs || {{Non}} || Dépendance à GO de Google. | ||
|- | |- | ||
| | | Onedev || {{Non}} || Un seul développeur. | ||
|- | |- | ||
| | | Savannah (non GNU) || {{non}} || Librisme assuré mais ergonomiquement peu sexy :-( | ||
|- | |- | ||
| SourceForge || {{Non}} || Instabilité licence<br/> | | SourceForge || {{Non}} || Instabilité licence<br/>Ergonomie non sexy<br/>Lenteurs. | ||
|- | |||
| Trac || {{Non}} || Pas assez connu. | |||
|} | |} | ||
== 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 == | |||
* 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… | |||
* 15 mars 2016 : ajout de Framagit et Gogs ; | |||
* 07 mai 2018 : actualisation de Gitorious, Gna! et Gogs ; | |||
* 16 février 2020 : ajout de Gitea, OneDev et Trac ; jardinage. |
Dernière version du 25 novembre 2020 à 04:17
Page rédigée autour du 08 décembre 2014.
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[modifier]
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.
Des comparatifs existent déjà :
- http://en.wikipedia.org/wiki/Comparison_of_open-source_software_hosting_facilities
- https://forge-allura.apache.org/p/allura/wiki/Feature%20Comparison/
- http://linuxfr.org/users/ife/journaux/pourquoi-github-saimal-quelques-alternatives
L'idée, ici, est d'en refaire un axé « Logiciel Libre ».
Note : en 2020, la FSF a lancé une étude, https://libreplanet.org/wiki/FSF_2020_forge_evaluation
Recensement[modifier]
Parmi les forges existantes, on trouve (par ordre alphabétique) :
- BitBucket :
- Licence : privateur
- Site web : https://bitbucket.org/
- Présentation :
- Framagit :
- Site web : https://git.framasoft.org/
- Présentation : http://framacode.org/gitlab.php
- note : instance GitLab CE hébergé et maintenue par Framasoft
- Gitea :
- Licence : MIT
- fork de Gogs : https://blog.gitea.io/2016/12/welcome-to-gitea/
- Depuis : 12/2016
- Site web : https://gitea.io/
- Présentation : https://en.wikipedia.org/wiki/Gitea
- Site démo : https://try.gitea.io/
- Note : l'installation consiste en un seul fichier binaire et une arborescence de dossiers, port dédiée configurable
- GitHub
- Licence : privateur
- Présentation :
- 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]
- GitLab.com :
- Site web : http://gitlab.com/
- Licence : privatrice [5], GitLab.com ≈ GitLab EE = GitLab CE + code privateur, le code de GitLab CE reste sous licence MIT Expat
- Business plan : faire du logiciel privateur pour faire du logiciel libre (mais bien sûr…)
- Présentation :
- GitLab CE :
- Licence : MIT Expat (https://gitlab.com/gitlab-org/gitlab-ce/blob/master/LICENSE)
- Présentation : https://gitlab.com/gitlab-org/gitlab-ce/blob/master/README.md
- Sources : https://gitlab.com/gitlab-org/gitlab-ce
- Note : pas de version hostée gratuite sur le web
- Gitorious :
- Licence : GNU AGPL
- Depuis : janvier 2008
- Fin : mars 2015 suite au rachat par GitLab,
- Business plan : un produit libre et des services professionnels payant autour ;
- Présentation :
- Gna!
- Licence : GNU AGPL [6]
- Depuis : 1989?
- Fin : 2004
- Site web : http://gna.org/
- Powererd by : Savane 3.1-cleanup
- Sources : http://savannah.nongnu.org/projects/savane-cleanup
- Présentation : http://about.gna.org/
- Gogs :
- Licence : MIT
- Depuis : 02/2015
- Site web : https://gogs.io/
- Présentation : https://fr.wikipedia.org/wiki/Gogs_%28logiciel%29
- Site démo : https://try.gogs.io/
- Onedev :
- Licence : MIT [7]
- Site web : https://code.onedev.io/
- Description : https://github.com/theonedev/onedev
- Note : un seul développeur, fait en Java
- Savannah (non GNU) :
- Licence : GNU GPL [8]
- Site web : http://savannah.nongnu.org/
- Powererd by : Savane 3.1-cleanup (« Note: GNU Savannah itself is currently running a fork for unknown reasons, cf. the 'administration' project » [9])
- Sources : http://savannah.gnu.org/projects/administration
- SourceForge :
- Site web : https://sourceforge.net/
- notes :
- acteur historique majeur dans les forges et les logiciels libres,
- est à l'origine de confusions par la privatisation de son code,
- aux dernières nouvelles, la plateforme SourceForge est maintenant basée sur Allura qui est un projet Apache créé, soumis et soutenu par SourceForge,
- applique la censure de l'U.S. Office of Foreign Assets Control,
- Présentation :
- Sources :
- Trac :
- Licence : pseudo BSD License [10]
- Site web : https://trac.edgewall.org/
- Démo : https://trac.edgewall.org/demo-1.2/
Récapitulatif[modifier]
Nom | Depuis | Fin | Licence | SVN | Git | Issue tracker |
Service en ligne |
Installable chez soi |
Web hooks |
---|---|---|---|---|---|---|---|---|---|
BitBucket | 2008 | actif | Privateur | Non | Oui | Oui | https://bitbucket.org/ | Non | Oui |
Framagit | 2015 | actif | MIT Expat | Non | Oui | Oui | https://git.framasoft.org/ | Oui | ? |
Gitea | 2016 | actif | MIT | Non | Oui | Oui | Non | Oui | ? |
GitHub | 2008 | actif | Privateur | Non | Oui | Oui | https://github.com/ | Non | Oui |
GitLab.com | 2011 | actif | MIT Expat + privateur | Non | Oui | Oui | http://gitlab.com/ | GitLab EE payant | Oui |
GitLab CE | 2011 | actif | MIT Expat | Non | Oui | Oui | Non | Oui | restreint |
Gitorious | 2008 | 2015 | AGPL | Non | Oui | Non | https://gitorious.org/ | Oui | Oui |
Gna! | 2004 | 2017 | GNU AGPL | Oui | Oui | Oui | http://gna.org/ | Oui | ? |
Gogs | 2015 | actif | MIT | Non | Oui | Oui | Non | Oui | Oui |
Onedev | ? | actif | MIT | Non | Oui | Oui | Non | Oui | ? |
Savannah (non GNU) | 2001 | actif | GNU GPL | Oui | Oui | Oui | http://savannah.nongnu.org/ | Oui | ? |
SourceForge | 1999 | actif | Apache | Oui | Oui | Oui | https://sourceforge.net/ | Oui | ? |
Trac | ? | actif | BSD* | Oui | Oui | Oui | Non | Oui | ? |
Comparaison[modifier]
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 |
Framagit | + logiciel libre + maintenance déléguée + ergonomie sexy |
- dépendance à la gouvernance de GitLab |
Gitea | + logiciel libre + léger + un seul fichier à installer |
- dépendance à Go de Google |
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) | - n'est plus disponible - 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 |
- n'est plus disponible - ergonomie ancienne et faible |
Gogs | + logiciel libre + léger |
- dépendance à Go de Google |
OneDev | + logiciel libre + léger |
- un seul développeur |
SourceForge | + logiciel libre + acteur historique + compatible SVN |
- licence mouvementée - ergonomie vieille et faible - lenteur récurrente |
Trac | + logiciel libre | - peu connu, peu utilisé |
Élection[modifier]
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. |
Framagit | Non | Incertitude sur l'avenir, délégation de la maintenance. |
Gitea | Moui | Dépendance à GO de Google, très léger, facile à installer. |
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 | N'est plus disponible… Absence d'un Issue Tracker gestion de groupes ? Ergonomie non sexy. |
Gna! | Non | N'est plus disponible… Librisme assuré mais ergonomiquement peu sexy :-( |
Gogs | Non | Dépendance à GO de Google. |
Onedev | Non | Un seul développeur. |
Savannah (non GNU) | Non | Librisme assuré mais ergonomiquement peu sexy :-( |
SourceForge | Non | Instabilité licence Ergonomie non sexy Lenteurs. |
Trac | Non | Pas assez connu. |
Résultats[modifier]
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[modifier]
- 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…
- 15 mars 2016 : ajout de Framagit et Gogs ;
- 07 mai 2018 : actualisation de Gitorious, Gna! et Gogs ;
- 16 février 2020 : ajout de Gitea, OneDev et Trac ; jardinage.