Il ne fait aucun doute que la majorité des débats sur les outils de programmation se résume soit par choix personnel (par l'utilisateur), soit par emphase sur la conception , c'est-à- dire l'optimisation de la conception en fonction de cas d'utilisation particuliers (par le constructeur d'outils). Les éditeurs de texte sont probablement l'exemple le plus important: un codeur travaillant sous Windows au travail et codant à la maison avec Haskell sur un Mac, valorisant l'intégration multiplateforme et du compilateur et choisissant Emacs plutôt que TextMate , etc.
Il est moins courant qu'une technologie nouvellement introduite soit véritablement, manifestement supérieure aux options existantes.
Est-ce en fait le cas des systèmes de contrôle de version (VCS), en particulier des VCS centralisés ( CVS et SVN ) par rapport aux VCS distribués ( Git et Mercurial )?
J'ai utilisé SVN pendant environ cinq ans, et SVN est actuellement utilisé là où je travaille. Il y a un peu moins de trois ans, je suis passé à Git (et GitHub) pour tous mes projets personnels.
Je peux penser à un certain nombre d'avantages de Git par rapport à Subversion (et qui, pour la plupart, sont abstraits des avantages d'un VCS distribué par rapport à un VCS centralisé), mais je ne peux pas penser à un exemple contraire: une tâche (qui est pertinente et qui survient chez un programmeur habituel. flux de travail) que Subversion fait mieux que Git.
La seule conclusion que j'en ai tirée est que je n'ai pas de données - pas que Git est meilleur, etc.
Je suppose que de tels contre-exemples existent, d’où cette question.