Depuis 6 mois ou plus, j'ai vu de nombreux codes hébergés sur sourceforge.net ainsi que d'autres sites d'hébergement "Move to GitHub". Une simple recherche Google avec la phrase "Déplacé vers Github" renvoie plusieurs résultats contenant le texte déplacé vers Github. C'est très déroutant pour moi et je me demande pourquoi les gens bougent exactement? Cela signifie-t-il que GitHub est meilleur ou y a-t-il un avantage spécial que je ne vois pas?
Ceci est un symptôme d'une migration plus large vers systèmes de contrôle de version distribués .
Certains sites Web qui hébergeaient traditionnellement des VCS non distribués (par exemple Codeplex et SourceForge) ont été un peu lents à ajouter la prise en charge du DVCS (par exemple Git ou Mercurial). Ainsi, les personnes qui voulaient utiliser DVCS pour leur projet ont été obligées de migrer leurs projets vers les fournisseurs qui les ont pris en charge (par exemple Github ou BitBucket). Github a été l'un des premiers à proposer une prise en charge DVCS et, naturellement, beaucoup de gens y ont migré leur code afin d'en profiter.
Ces autres sites Web commencent à peine à rattraper le DVCS (Codeplex, par exemple, prend désormais en charge Mercurial et Git), mais ils sont encore loin derrière en termes de fonctionnalités telles que la création et la soumission de demandes de tirage. Pour vraiment profiter de DVCS, Github et Bitbucket sont toujours les meilleures options.
L'hébergement de projet est une infrastructure. L'infrastructure présente des effets de réseau, ce qui signifie que l'infrastructure devient plus utile plus les gens y sont connectés. (En particulier, l'utilité est O (nombre_de_connexions), ce qui signifie que pour tout membre individuel, c'est O (total_members) et pour tout le système, c'est O (total_members ^ 2)). Ceci, à son tour, conduit à un effet appelé monopole naturel, ce qui signifie qu'il est naturel pour un tel système qu'un seul concurrent survive, car l'utilité est maximisée lorsque tout le monde utilise le même système.
Il est donc logique de rejoindre le leader du marché, qui est GitHub. Il y a plus de référentiels, plus d'utilisateurs, plus de branches, plus de révisions, plus tout sur GitHub que sur SourceForge, Google Code et CodePlex combinés.
La question intéressante est, bien sûr, si les effets de réseau signifient que le leader du marché obtient automatiquement un monopole naturel, comment GitHub a-t-il pu briser SourceForge?
Et la réponse est, en étant donc perturbatrice, la peine de rejoindre une infrastructure beaucoup plus petite en valait la peine pour les premiers utilisateurs:
Je pense que l'une des raisons est l'audience différente: sourceforge est principalement pour l'hébergement applications, probablement la caractéristique la plus importante d'une page de projet est un lien vers l'exécutable compilé (ou un autre téléchargement). En d'autres termes, il s'adresse à tilisateurs, pas aux développeurs.
D'autre part, github est principalement destiné à l'hébergement code source, la caractéristique la plus importante de la page du projet est la liste des répertoires de la branche master
. Il est destiné aux développeurs (souhaitant modifier ou utiliser le code d'un projet), pas aux utilisateurs.
Je pense que c'est l'une des raisons pour lesquelles les outils et bibliothèques destinés aux développeurs migrent vers github.
Sourceforge propose également Git , mais Github le fait juste mieux (pour l'instant).
Leur fonction de tueur , à mon avis, est le "graphique de réseau":
Différence avec gitk
: il vous montre également ce qui se passe dans les branches des autres (sans avoir à tirer leurs branches), ce qui est très important lors de la collaboration.
GitHub est simple, facile à utiliser, facile à démarrer, puissant et a fière allure et est Web 2.0-ish.
J'utilise GitHub, et je le trouve remarquablement plus facile à utiliser que SourceForge, qui avait son pouvoir caché derrière une série de menus et nécessitait des opérations assez élaborées pour tout configurer. Et je suis programmeur.
De plus, je pense qu'il y a une fonctionnalité plus puissante: que ce soit un individu souhaitant publier son premier projet open source quelque part, ou des équipes qui souhaitent collaborer sur un projet commercial (privé), GitHub "évolue" parfaitement bien pour presque tous cas d'utilisation.
En fin de compte, je pense que c'est de la psychologie humaine. Le produit est-il facile à utiliser, facile à utiliser, peu coûteux (ou gratuit) ... est-il beau et est-ce quelque chose que je recommanderais à mes amis? Pour GitHub, je répondrais oui à toutes ces questions.
Vous devez également prendre en compte certaines fonctionnalités assez impressionnantes offertes par github que je n'ai pas encore vues mentionnées.
D'autres sites peuvent avoir ces fonctionnalités, mais je suis sûr qu'aucun site ne les a tous.
Ces gars sont pratiquement partout ... dispersant lentement leurs atouts techniques sur le Web et sur le bureau. Ils sont seulement de plus en plus gros au moment où nous parlons et ils embauchent les meilleurs ingénieurs (ils ont même réussi à voler Phil Haack à Microsoft ... allez comprendre).
Une autre raison qui peut attirer des développeurs supplémentaires vers GitHub est que les outils de développement commencent à adopter git, et les plates-formes comme Eclipse ont désormais la prise en charge de Git intégrée (s'applique aux packages pour Java, développeurs C++, etc.), ce qui rend il faut moins d'étapes pour télécharger votre projet sur GitHub.