GitHub : une majorité des projets non-Open Source

GitHub : une majorité des projets non-Open Source Se présentant désormais comme un réseau social de développeurs, la plate-forme de partage de code source serait-elle prise d'assaut par des éditeurs propriétaires ? Une étude sème le doute.

Dédiée au partage de code, la plate-forme en ligne GitHub pourrait laisser penser que la plupart des dépôts qu'elle héberge sont publiés en Open Source. Il semble bien que ce ne soit pas le cas. C'est ce que dévoile une étude publiée par le Software Freedom Law Center (et relayée par The Register). Revendiquant plus de 3,5 millions d'utilisateurs, GitHub contiendrait des projets pour la plupart très imprécis en termes de licence et de droit d'auteur, rendant leur caractère potentiellement Open Source très incertain (voir notre astuce sur GitHub : Comment cloner à la fois des branches maitre et de développement sur GitHub ?)

La GPL n'est pas la première licence Open Source sur GitHub

Pour réaliser cette analyse, le Software Freedom Law Center a mis au point un script pour récupérer les fichiers de licence au sein des dépôts GitHub. Le centre a ensuite passé les fichiers récupérés à la moulinette de FOSSology, un outil d'analyse sémantique développé par HP pour identifier les types de licence. L'API de GitHub bridant le volume de requêtes possible, l'étude s'est limitée à 28% des dépôts abrités par le site.

Au final, sur les 1 692 135 dépôts analysés, 14,9% (c'est-à-dire 219 326) disposent, dans leur répertoire de premier niveau, d'un fichier permettant d'identifier une licence. Parmi ceux-ci, 28% affichent cette licence dans un fichier README, et non dans des fichiers LICENSE ou COPYING. Enfin, l'étude montre également que les développeurs investissant GitHub se détournent de manière assez écrasante des licences de type copyleft (comme la GPL) au profit d'alternative plus souple.


Retrouvez toutes nos astuces sur l'outil de gestion de versions de code open souce Git (et GitHub) :

 Comment annuler un commit Git ?

 Comment cloner à la fois des branches maitre et de développement sur GitHub ?

 Comment corriger une erreur dans un message de commit Git ?

 Comment gérer un conflit de fusion dans Git ?