Edit 2015-08-01: Cette réponse reçoit toujours des vues et des votes. C'est plus qu'ancien et j'aimerais le supprimer, mais comme c'est la réponse acceptée, je ne peux pas faire ça. Encore une fois, c'est le wiki de la communauté et la communauté l'a maintenu à jour - merci pour cela!
SourceForge est passé du côté obscur, prenant en charge le projet et les regroupant avec Adware ( Google GIMP Sourceforge Adware ). A éviter à tout prix. GitHub est à l'heure actuelle toujours le plus populaire, bien qu'il existe des alternatives (par exemple, BitBucket propose des dépôts privés illimités gratuitement pour un maximum de 5 utilisateurs.)
C'est fou à quel point le paysage a changé au cours des dernières années, et si vous lisez ceci à l'avenir, peut-être que GitHub n'est plus le produit cool. En bout de ligne, il existe une pléthore d'options impressionnantes pour le système de contrôle de source que vous souhaitez utiliser.
Anciennes informations de 2010 ci-dessous pour des raisons d'histoire
Edit: Cette réponse est maintenant ancienne. Au cours des 2 dernières années, GitHub est devenu le premier lieu d'hébergement de code, et chaque fois que je dois créer un nouveau projet OSS, je n'ai pas l'ombre d'un doute où aller. Laissant ceci ci-dessous pour référence.
En effet, mon message a presque 2 ans (2008) maintenant et n'est plus tout à fait exact.
Pourquoi?
Parce que je pense que SourceForge est désormais insignifiant pour les projets open source. D'accord, cela me posera beaucoup de problèmes, alors laissez-moi clarifier:
Je suis absolument convaincu que les projets Open Source doivent être exécutés sur un DVCS, de préférence git ou mercurial car ils sont les plus répandus - rien contre Bazaar, mais je pense que c'est un peu trop obscur. ( Edit: SourceForge propose désormais Mercurial et Bazaar, donc cet argument ne tient plus. Cependant, après deux refontes, je pense que l'image de SF n'est pas trop belle. Pour les comparer aux images d'entreprises: Alors que GitHub est Apple, SF est IBM. Solide comme le roc, mais un peu poussiéreux)
Donc, si je devais écrire à nouveau cette publication, ce serait CodePlex contre GitHub contre BitBucket , GitHub étant le gagnant. Mais c'est une déclaration générale, alors laissez-moi ajouter des détails. +/- n'est pas strictement Pro / Con, il s'agit plutôt de mettre en évidence différentes philosophies.
CodePlex
+ Real Mercurial / Git Hosting - pas de pont bogué au-dessus de TFS, vous avez un véritable Mercurial / Git
+ Wiki intégré qui permet d'ajouter une documentation riche et de belles pages
+ Bug Tracker et forums de discussion inclus
- Le navigateur de code source n'est pas si génial - Les différences apparaissent dans une fenêtre contextuelle et se `` sentent '' simplement compliquées
- Les fourchettes et les demandes d'extraction `` pas aussi faciles '' - l'interface utilisateur pourrait nécessiter un peu de travail
Dans l'ensemble, CodePlex est toujours génial, mais je pense qu'il est plus adapté aux développeurs uniques ou aux très petites équipes car le site Web se concentre sur le Wiki plutôt que sur le code source. C'est plus une publication qu'une plateforme de collaboration. Théoriquement, vous n'avez pas besoin d'une page d'accueil de projet, votre projet CodePlex peut être votre guichet unique.
GitHub
+ Git Hosting, prend en charge SSL / SSH
+ Le graphique réseau permet de voir les fourches et ce qui a fusionné dans quoi quand
+ Possibilité de `` regarder '' des projets - votre page de compte est comme un mur Facebook avec de nouvelles vérifications
+ Super bon visionneuse de différences avec la possibilité de commenter sur les modifications d'une seule ligne - voir ici
+ Le fork est un processus en 2 clics, tout comme l'envoi de pull requests
+ GitHub a maintenant l'outil GUI GitHub pour Windows
- La page principale n'est pas très `` jolie '' pour les non-développeurs. Si vous avez un fichier Readme dans votre projet (prend en charge certains langages de balisage comme Markdown ou HTML), il est affiché, mais la page initiale est le code source
- Wiki n'est pas si génial - c'est Markdown, mais le formatage semble parfois un peu trop complexe.
GitHub a une philosophie différente de CodePlex: tout est question de code source et de collaboration entre les développeurs. La page principale du projet est le code source le plus à jour. Il existe un Wiki séparé, mais il est plus destiné à la documentation qu'à la présentation de votre projet. Le graphique du réseau est fantastique, même s'il peut devenir déroutant une fois qu'il y a plus d'environ 20 fourchettes (souvent lorsqu'un projet de haut niveau est annoncé, tout le monde et leur chien le bifurquent, mais la plupart des fourchettes meurent rapidement). GitHub s'adapte très bien à toutes les tailles.
En fait, GitHub me permet de créer très facilement un projet, d'appliquer un correctif / correctif, de le valider dans mon fork et d'envoyer une pull request à l'auteur. Avec le graphique du réseau, il est vraiment facile de voir le commit.
Mais vous avez probablement besoin d'une page d'accueil distincte pour présenter votre projet aux utilisateurs finaux et pour fournir des téléchargements, car les fonctionnalités de téléchargement de GitHubs ne sont pas si bonnes.
BitBucket
+ Git / Mercurial
+ Permet des référentiels privés gratuitement, jusqu'à 5 utilisateurs
Je n'ai pas suffisamment utilisé BitBucket pour faire un vrai commentaire. La seule caractéristique qui le distingue est que l'hébergement privé est gratuit, tandis que GitHub facture et Codeplex ne l'offre pas du tout.
Code Google
Google Code n'est plus une option.
- La création de projet est désactivée depuis mars 2015, et le service Google fermera définitivement le 25 janvier 2016 , car les services concurrents sont tout simplement meilleurs.
- C'est moche et c'est trop compliqué de parcourir le code source (le lien est un peu enterré)
Je ne l'ai pas utilisé, donc je ne veux pas dire que c'est mauvais - ce n'est pas le cas. De nombreux projets l'utilisent et il est très stable et robuste, aucun développeur n'a entendu beaucoup de mal. Cependant, en tant qu'opinion personnelle et subjective, le «design» me rebute.
SVN contre Git / Mercurial
Pour réitérer mon commentaire ci-dessus sur le fait que SourceForge est obsolète: c'est bien sûr un peu dur. Je pense cependant que SVN est préjudiciable aux projets open source. Tout d'abord, des exigences de métadonnées étranges pour ignorer les fichiers. Sur Git ou mercurial, vous avez un fichier appelé .gitignore ou .hgignore à la racine de votre arborescence source qui comprend une liste de fichiers / répertoires / modèles à ignorer. Pas de magie svn: ignorez les métadonnées dans le dossier .svn. Cela seul souffle SVN hors de l'eau pour moi. Si je démarre un nouveau projet Visual Studio, je dois ensuite appliquer ces métadonnées magiques, tandis qu'avec Git / mercurial, je copie simplement un fichier et j'en ai terminé.
Ensuite, la possibilité de fork, de patcher et d'envoyer une pull request est fantastique, en particulier pour les patchs petits / uniques.
Enfin et surtout, SourceForge est toujours BEAUCOUP trop complexe à mon goût. Ce n'est pas un mauvais hôte, mais cela montre vraiment son âge à mon humble avis. Cela étant dit, il est toujours robuste et possède de nombreux miroirs dans le monde entier. De plus, le Bug Tracker est beaucoup plus sophistiqué que les autres.
De plus, si votre projet, pour une raison quelconque, nécessite des règles de contribution strictes (ce qui peut avoir du sens, par exemple une protection juridique pour s'assurer que le code engagé est effectivement contribué légalement), alors un système traditionnel comme SVN hébergé sur SourceForge peut fonctionner.
Edit: Je ne savais pas que SF avait enfin un hébergement distribué. Comme dit ci-dessus, c'est robuste mais ce n'est plus le `` cool kid '', et je le trouve beaucoup trop complexe.
TL; DR
Pour tout projet petit à moyen, je recommande vivement GitHub, pour les petits projets où vous voulez un beau site Web, j'irais aussi avec CodePlex et pour les projets privés, j'irais avec BitBucket. Pour les grands projets qui nécessitent un outil de suivi des bogues très sophistiqué, des tonnes de fonctionnalités supplémentaires et un «vrai» site Web, pensez à Source Forge.