Pourquoi l’augmentation soudaine du nombre d’émetteurs Git sur un graphique popcon de Debian en 2010-01?

86

Presque chaque article que j'ai lu 1 comparer Git et Mercurial il semble que Mercurial a une meilleure ligne de commande UX avec chaque commande étant limitée à une seule idée (contrairement par exemple git checkout).

Mais à un moment donné, Git est devenu soudainement très populaire et le nombre d’émetteurs Git présents sur le graphe Debian Popcon (voir l’illustration ci-dessous) a littéralement explosé.

Popularité Git vs. Mercurial

Source: Debian

Qu'est-il arrivé en 2010-01 que les choses ont soudainement changé. On dirait que GitHub a été fondé avant cela - 2008.

inconnu
la source
23
bien à un moment donné, github a frappé un point d'inflexion et a décollé. Je doute que c'était git par lui-même. Je me demande si quelqu'un pourrait corréler la populatrité de gits avec la popularité de githubs?
Doug T.
2
En fait, par curiosité, que représente le "nombre de déposants"?
Adam Houldsworth
6
Êtes-vous curieux de connaître la popularité globale de Git ou l'installation de Git sur Debian? Vos données fournissent uniquement des informations sur une distribution Linux, en ignorant toutes les autres, ainsi que sur les systèmes d'exploitation BSD, Mac et Windows. Pourtant, vous posez une question générique sur la montée en puissance d'un outil. Sur la base de certaines des réponses, il existe une explication spécifique à Debian, mais les données sont insuffisantes pour parler de la popularité de Git par rapport à la popularité de Mercurial parmi tous les utilisateurs potentiels. Il semble que la question, telle que présentée, repose sur des hypothèses erronées.
Thomas Owens
32
Git a littéralement explosé? Git ne semble pas du tout un outil sûr. Merci pour l'avertissement.
Jason
4
Cependant, git est utilisé dans un grand nombre d'autres paquets. Regardez la différence entre apt-cache rdepends git-core, et apt-cache rdepends mercurial. Peut-être que ça n'a rien à voir avec git, alors il est inclus parce que quelqu'un a installé un autre paquet commun. Par exemple, je suis un utilisateur de etckeeper et ikiwiki, tous deux basés sur git (je pense qu'il est également possible d'utiliser mercurial). Je vous suggère de prendre un peu de temps et de regarder toutes les choses qui dépendent ou recommandent git-core.
Zoredache

Réponses:

48

Le paquet "gnuit" (GNU Interactive Tools, navigateur / visualiseur de fichiers et visualiseur de processus) s'appelait "git" dans Debian jusqu'au 2009-09-09, tandis que git s'appelait "git-core".

Par conséquent, un meilleur graphique à regarder est:

Ce qui montre que la popularité n'a pas augmenté de façon spectaculaire (prenez la ligne verte pour la partie gauche jusqu'à ce qu'ils se croisent, puis prenez la ligne rouge).

Michael
la source
17
Il semble encore qu'en 2010/2011, il y a eu une augmentation spectaculaire de la popularité. Il est passé d'environ 13 000 installations de git-core (qui est Git) en 2010-01 à plus de 50 000 installations (cumulées de git-core et de paquets git) en 2011-01. Cela représente une augmentation de près de 40 000 installations en un an - une augmentation beaucoup plus nette que toute autre augmentation annuelle.
Thomas Owens
3
Quelqu'un sur HN a édité l'image et il semble toujours y avoir une hausse spectaculaire comme le mentionne @ThomasOwens. i.imgur.com/PmYj7.png
Jungle Hunter
2
Oui, cela passe toujours de la croissance linéaire à la croissance exponentielle, ce qui est très important, même si ce n'était pas aussi soudain qu'il y paraît
Ben Brocka
3
@BenBrocka Est-ce que cela ne passe pas de linéaire en linéaire avec un coefficient plus élevé? :) Et ce sera probablement logarithmique.
Kreativitea
2
@ RussellBorogove: Nonsense. Le nombre de lamas volants bioluminescents à Djibouti augmente de manière exponentielle, et je pense que cela va continuer pour toujours.
Escargot mécanique
34

Le paquet git dans Debian était autrefois appelé git-core. En avril 2010, le paquet a été renommé git. Plus de détails peuvent être trouvés dans cet article de blog de Julius Plenz ou ce commit dans Debian .

Voici un graphique qui montre le nombre d'installations à la fois gitet git-coredans le temps:

Git-GitCore-Graph

noqqe
la source
1
Ce serait bien d'avoir une capture d'écran du graphique ici. Si vous aimez je peux l'ajouter. :)
Jungle Hunter
1
+1 Ce graphique illustre le mieux ce qui s’est passé avec le renommage du paquet.
Jeff Ferland
26

J'utilisais Darcs pour mes propres projets pendant un petit moment. Je suis passé à git pendant l'ascension rapide à laquelle fait référence votre graphique. Voici donc mon observation:

Les systèmes de contrôle de source distribués à peu près à ce moment-là étaient très avancés. Les soi-disant programmeurs alpha les utilisaient sur le côté, mais ils étaient en dehors du radar de la plupart des développeurs de logiciels professionnels. Les concepteurs de CVS / SVN / SourceSafe / TFS considèrent généralement que les programmeurs sont plus ou moins satisfaits et la plupart des gens supposent que les problèmes à l'origine du système de contrôle de source distribué peuvent être résolus avec un meilleur outillage. Tout comme vous avez obtenu une amélioration en passant de CVS -> SVN à un jour, il y aurait quelque chose qui vous permettrait de passer à SVN -> SVN ++. Sinon, comment gérer le contrôle de source?

Puis vint git. Ce qui a forcé le regard de tous, c’est qu’il y avait un énorme projet public qui l’a immédiatement adopté. Git a eu beaucoup d'utilisateurs gratuitement - si vous vouliez faire un piratage sérieux du noyau, vous utilisiez git. Bien que je ne puisse pas être sûr à 100%, je parierais qu’à ce moment-là, aucun autre DVCS n’avait une base d’utilisateurs aussi importante.

Ensuite cela a fonctionné. Cela a bien fonctionné Cela a bien fonctionné en public. Il était également, pour ses verrues initiales, plus stable que la plupart des DVCS simultanés à l’époque. Les darcs, par exemple, pourraient être placés dans un état incohérent nécessitant un utilitaire absurdement complexe (quadratique? Factoriel? Impossible à retenir, mais c’était mauvais ) à corriger. Git a toujours été plus stable.

De sa large base d'utilisateurs, il a en quelque sorte saigné.

Chaque projet, commercial ou open source, a besoin de cette masse critique. Darcs ne l'a pas compris. Mercurial non plus. Se rappeler. Beaucoup de petits projets l'utilisent. Il y a probablement même un certain nombre d'utilisateurs commerciaux. Mais quelle est votre grande réussite?

"Si c'est assez bon pour le noyau Linux, c'est assez bon pour vous" est un argument très convaincant.

En résumé, c’était un bon produit qui arrivait au bon moment et qui disposait d’une base d’utilisateurs importante et dévouée.

Michael
la source
4
Je pense que git et hg ont commencé vers 2005, en 2010, ils étaient une technologie vieille de 5 ans. Je ne les aurais pas qualifiés de grand public, mais je ne pense pas que saignée soit correcte non plus.
R0MANARMY
10
Comment cela répond-il à la question posée? "Qu'est-il arrivé en 2010-01 que les choses ont soudainement changé" comme le montre la capture d'écran
Gnat
2
@gnat C'est le stade de saignement / masse critique auquel je faisais référence.
Michael
4
@Michael tel que je le vois, votre réponse ne donne pas beaucoup de détails à ce sujet. Avec tout le respect que je vous dois, le libellé actuel laisse plutôt penser à une conjecture sauvage, à un coup dans le noir. « A cette époque en jan 2010, je me sentais comme ça vient, il y avait quelque chose dans l'air ... » Pas très utile désolé
moucheron
1
Les problèmes générés par le contrôle de source distribué ont été résolus par un meilleur outillage. Le SVN d’aujourd’hui est bien meilleur que la version vieille de plusieurs années que les gens de DVCS semblent penser est toujours actuelle, et il résout les problèmes inhérents à l’ancien modèle sans introduire tous les nouveaux maux de tête et la complexité supplémentaire apportés par DVCS.
Mason Wheeler
13

J'adoptais tardivement - je suis passé de Mercurial à Git vers 2010.

Je crois que Git est devenu si populaire en raison de sites tels que GitHub où vous avez eu un effet de réseau dans les outils de contrôle de version. Cela n'était pas vu auparavant, car vous partagiez le code sur une base de projet ou d'entreprise.

Je me souviens tout particulièrement de ma transition vers Git et Github, car tous les projets pour lesquels je souhaitais suivre et auquel je contribuais avaient fait de même, ainsi que les développeurs avec lesquels je me suis associé.

C'est un effet de réseau.

GitHub était la couche de collaboration basée sur le Web la plus populaire basée sur DVCS et Git a fini par être «assez bon». Mercurial était certainement plus facile à apprendre et à utiliser. Git a de nombreuses nuances, mais une marque solide grâce à Linus.

Ce n’est pas parce que GitHub a été lancé en 2008 et que la croissance commence en 2010 que GitHub n’est pas responsable. Si vous examinez les courbes de croissance concurrentielles dans d'autres domaines tels que les réseaux sociaux et la croissance de Facebook, la ligne est très similaire.

Vous ne voyez pas de telles courbes de croissance sans un effet de boucle / réseau viral.

Pour par exemple. comparer à un graphique de la croissance de Facebook

courbe de croissance facebook

Mise à jour: Je sais que la source ci-dessus n’est peut-être pas exacte, mais de nombreuses sources de données démontrent que Git a connu une croissance exponentielle au cours des dernières années.

Graphique 1: Mentions de Git dans les offres d'emploi

mention de git dans les offres d'emploi

Et l'enquête Eclipse qui montre que la part de marché de Git est passée de 13% en 2011 à 27% en 2012 . Croissance incroyable.

Cet article explique beaucoup mieux la croissance de Git et les effets de réseau que ce que j'ai fait ici.

nikcub
la source
9
Il y a une grande différence entre une augmentation exponentielle (comme dans le graphique facebook) et le graphique d'origine inclus dans la question. Si l’on en croit ce graphique, il existe une discontinuité spectaculaire dans la pente à un moment donné - ce qui impliquerait un événement , et non un effet de réseau. Et en effet, d’autres réponses semblent indiquer que cet événement était le paquet en train d’être renommé! :)
starwed
Ce tableau est peut-être erroné, mais d'autres enquêtes démontrent que la croissance de Git a été exponentielle. Pour par exemple. L'enquête Eclipse telle que discutée dans ce billet (ce que je fais valoir, mais d'une bien meilleure façon): jamesmckay.net/2012/06/…
nikcub
Le lien mckay est cassé. Voici la version de Wayback Machine .
Faheem Mitha
5

Pour que tout soit clair, ce graphique montre l’installation de git sur les systèmes Debian.

À peu près au bon moment, le paquet Debian a été renommé de git-core à git. Peut-être que les gens trouvaient le paquet plus facile maintenant que le nom reflétait le logiciel.

Peter van der Does
la source
5

Je suis surpris que personne n'ait mentionné Github comme l'une des principales raisons pour lesquelles Git a gagné en popularité . Ils ont poussé le git mainstream.

Github a été lancé en avril 2008 et a gagné en popularité après un an ou deux. Et puis, quand vous voyez une explosion soudaine d'utilisation de git / git-core, c'est principalement dû aux 2 millions d'utilisateurs de github et à leurs dépôts de 3,7 millions. Github a rendu Git facile à utiliser. Bitbucket était là, mais github l'a fait sans effort. Je suis sûr que si les gars de github avaient choisi le mercure à la place de git, nous aurions dû voir la même augmentation de la consommation de mercure.

L'analogie peut être: Canonical: Linux :: Github: Git

John
la source
Je suis absolument d'accord. Github rend le contrôle de révision amusant, facile à comprendre et très utile avec tous ces référentiels open-source. Ils sont à mon avis la raison pour laquelle Git est devenu si gros.
d34n5
1

Eh bien, les VCS distribués à mon humble avis, comme Hg et Git, sont intrinsèquement meilleurs qu'un VCS centralisé - donc SVN allait toujours perdre face à l'un d'entre eux.

Comme il a déjà été observé, git avait l’énorme avantage par rapport au mercure qu’il était utilisé par le projet open source le plus important et le plus abouti de la planète - c’est un sacré record, dès le début.

En ce qui concerne la raison de l’explosion soudaine du début de 2010, j’imagine que c’est plutôt prosaïque. Git est brillant, mais ce n'est pas très intuitif pour un débutant.

Le meilleur livre de Git, IMHO, est Pro Git, qui a été publié en septembre 2009. Le deuxième meilleur livre (encore à mon humble avis), le livre de O'Reilly Git, a été publié en juin 2009.

La raison pour laquelle l'utilisation de Git a explosé au début de 2010 pourrait être aussi simple que le fait que c'était à ce moment-là que de très bonnes ressources pour apprendre à l'utiliser étaient devenues disponibles.

djh
la source
1
SVN n’a jamais été un VCS centralisé de premier plan en matière de création de branches et de fusion. Hg et Git ont été les premiers VCS open source à bien gérer les ramifications et les fusions. Je ne pense pas que centralisé / distribué avait beaucoup à voir avec cela.
Ian
1

Choisir un système de contrôle de version est une décision sociale. Toute l'équipe doit utiliser la même solution. Contrairement à un éditeur de texte, qui est une décision personnelle, différents développeurs peuvent utiliser différents éditeurs et collaborer facilement.

Il y a donc des effets de réseau sur le choix d'un système de contrôle de version, faisant en sorte que des systèmes légèrement meilleurs ou plus populaires deviennent encore plus populaires.

Par exemple, je préfère les darcs pour les projets open source, mais j'ai constaté que davantage de contributeurs potentiels connaissaient git, et j'ai reçu plus de contributions plus facilement pour des projets hébergés avec git plutôt que des darcs. Je termine donc avec git à la place de darcs. Ensuite, comme je l’utilise et que je publie du code sur Github, il semble que je l’approuve ou que je puisse même le préférer, ce qui pourrait inciter les autres à l’utiliser.

Les développeurs ne veulent pas apprendre un nouveau système de contrôle de source pour chaque projet auquel ils contribuent. Il est donc avantageux pour la communauté dans son ensemble de disposer d'un standard "suffisamment bon" et d'une grande popularité, puis de laisser chaque équipe et projet choisir le "meilleur". "solution dans le vide.

Github n'a ajouté que de l'essence à l'effet réseau.

Mark Stosberg
la source
-1

En examinant le graphique corrigé dans la réponse de Michael, montrant à la fois git-core et git sur les systèmes Debian, la question semble être de savoir pourquoi git a commencé à devenir populaire en 2006 sur les systèmes Debian et pourquoi il a connu une croissance exponentielle entre 2006 et 2012.

La raison pourrait en être la forte adoption des distributions Linux basées sur Debian, comme Ubuntu, qui a commencé à devenir populaire vers 2005-2006 et qui est devenue la distribution n ° 1 jusqu’en 2011, lorsque Mint, également basé à Debian, est devenu n ° 1. Fin 2012, Mint est toujours n ° 1 et Ubuntu n ° 3 selon DistroWatch .

GitHub, fondé en 2008, fournissait gratuitement l'hébergement git. Entre 2008 et 2012, il est devenu le premier service de référentiel source au monde, avec environ 2,5 millions d'utilisateurs et environ 4,5 millions de projets , selon Wikipedia à la fin de 2012.

Rails et de nombreux autres projets sont passés de Rubyforge à GitHub à la fin des années 2000. En outre, Bundler a été introduit à peu près à l'époque en question (fin 2009) avec la prise en charge de l'installation / de la mise à jour de gems via une :gitoption du fichier Gemfile, et Bundler était inclus en tant que dépendance de Rails 3. Projets en Python, Javascript, C, C ++ , Java, CSS, etc. ont également migré ou démarré sur GitHub.

Ceux qui souhaitaient contribuer aux projets sur GitHub devaient créer le projet dans GitHub, utiliser un client git local pour cloner le référentiel avant d’apporter des modifications, de les replacer dans GitHub et de faire une demande de tirage. C’était beaucoup plus simple que d’autres méthodes utilisées auparavant et c’était sans doute une raison importante pour son adoption par les projets qui ont été transférés sur GitHub ou qui ont décidé de commencer par là. Cela signifiait que git-core / git devait être installé dans les distributions basées sur Debian afin que les développeurs puissent utiliser GitHub.

Je pense donc que la distribution de distributions basées sur Debian est devenue plus populaire et que l'adoption de git s'est développée en raison de la croissance du nombre d'utilisateurs et de projets de GitHub, qui provient probablement de son hébergement gratuit et de son expérience utilisateur.

Gary S. Weaver
la source
-2

Je pense que beaucoup de gens confondent corrélation avec causalité.

Les graphiques présentés montrent tous des corrélations entre les mesures de la popularité des gits et les événements ... et d'autres mesures. Cependant, une corrélation n'est pas une preuve claire de la causalité.

Certaines autres réponses tentent d'établir des relations avec d'autres choses; Par exemple, évangélisation de Linus Torsvalds pour DVCS, formation de Github, l'essor des réseaux sociaux. Bien qu'il soit évident que la corrélation (sur une ligne de temps) n'est pas aussi forte, cela n'exclut pas la causalité. Surtout si vous acceptez l'hypothèse "d'effet de réseau"; c'est-à-dire qu'il y a plusieurs causes.

L’essentiel, c’est que le type de preuve disponible ne peut pas démontrer la causalité. Nous parlons du comportement collectif de centaines de milliers de personnes, et les gens prennent des décisions pour différentes raisons ... ou aucune raison logique du tout. Les programmeurs ne sont pas différents des autres.

Stephen C
la source