Editar 01/08/2015: Esta resposta ainda está recebendo visualizações e votos. É mais do que antigo e eu gostaria de excluí-lo, mas como é a resposta aceita, não posso fazer isso. Por outro lado, é um wiki da comunidade e a comunidade o mantém atualizado - obrigado por isso!
O SourceForge passou para o lado sombrio, assumindo o projeto e juntando-o ao Adware ( Google GIMP Sourceforge Adware ). Evite a todo custo. Atualmente, o GitHub ainda é o mais popular, embora existam alternativas (por exemplo, o BitBucket oferece repositórios privados ilimitados gratuitamente para até 5 usuários.)
É louco o quanto o cenário mudou nos últimos anos e, se você estiver lendo isso no futuro, talvez o GitHub não seja mais o produto interessante. A linha inferior é: Há uma infinidade de opções impressionantes para qualquer sistema de controle de origem que você deseja usar.
Old 2010 informações abaixo por uma questão de história
Edit: Esta resposta é agora antiga. Nos últimos 2 anos, o GitHub emergiu como o principal local de Hospedagem de Código, e sempre que preciso criar um novo projeto OSS, não tenho o menor vestígio de dúvida para onde ir. Deixando isso abaixo para referência.
De fato, minha postagem tem quase 2 anos (2008) e não é mais exata.
Por quê?
Porque acho que o SourceForge é insignificante agora para projetos de código aberto. Ok, isso me causará muitos problemas, então deixe-me esclarecer:
Estou absolutamente convencido de que os projetos de código aberto devem ser executados em um DVCS, de preferência git ou mercurial, pois são os mais difundidos - nada contra o Bazaar, mas acho que é um pouco obscuro. ( Edit: SourceForge agora oferece Mercurial e Bazaar, para que o argumento não fique mais. No entanto, após duas reformulações, acho que a imagem de SF não é muito boa. Para compará-las às imagens de empresas: Enquanto o GitHub é Apple, SF é IBM. Sólido, mas um pouco empoeirado)
Portanto, se eu escrevesse essa postagem novamente, seria CodePlex vs. GitHub vs. BitBucket , com o GitHub sendo o vencedor. Mas essa é uma afirmação geral, então deixe-me adicionar detalhes. +/- não é estritamente Pro / Con, é mais para destacar diferentes filosofias.
CodePlex
+ Real Mercurial / Git Hosting - sem ponte de buggy no topo do TFS, você possui o Mercurial / Git real
+ Integrated Wiki que permite adicionar documentação rica e páginas de boa aparência
+ Bug Tracker e fóruns de discussão incluídos
- O navegador do código-fonte não é tão bom - As diferenças aparecem em um pop-up e apenas 'parecem' complicadas
- os Forks e os Pedidos de Pull 'não são tão fáceis' - a interface do usuário pode usar algum trabalho
No geral, o CodePlex ainda é ótimo, mas acho que é mais adequado para desenvolvedores individuais ou equipes muito pequenas, porque o foco do site está no Wiki, e não no código-fonte. É mais uma publicação do que uma plataforma de colaboração. Teoricamente, você não precisa de uma página inicial do projeto, seu projeto CodePlex pode ser o seu balcão único.
GitHub
+ Git Hosting, suporta SSL / SSH
+ Gráfico de rede permite ver garfos e o que se fundiu com o que quando
+ Capacidade de 'assistir' projetos - a página da sua conta é como um mural do Facebook com novos checkins
+ Visualizador de diferencial super bom com a capacidade de comentar em alterações de linha única - veja aqui
+ A bifurcação é um processo de 2 cliques e o envio de solicitações pull
+ O GitHub agora tem a ferramenta GUI GitHub para Windows
- A página principal não é muito bonita para os não desenvolvedores. Se você possui um Leia-me em seu projeto (suporta algumas linguagens de marcação como Markdown ou HTML), ele é exibido, mas a página inicial é o código-fonte
- o Wiki não é tão bom - é o Markdown, mas às vezes a formatação parece um pouco complexa.
O GitHub tem uma filosofia diferente do CodePlex: trata-se do código fonte e da colaboração entre os desenvolvedores. A página principal do projeto é o código fonte mais atualizado. Existe um Wiki separado, mas mais voltado para a documentação do que para a apresentação do seu projeto. O gráfico da rede é fantástico, embora possa ficar confuso quando houver mais de 20 garfos (frequentemente quando um projeto de alto nível é anunciado a todos e seu cão o está bifurcando, mas a maioria dos garfos morre rapidamente). O GitHub se adapta muito bem a qualquer tamanho.
De fato, o GitHub torna super fácil para mim bifurcar um projeto, aplicar uma correção / patch, enviá-lo ao meu fork e enviar uma solicitação de recebimento ao autor. Juntamente com o gráfico Rede, é realmente fácil ver o commit.
Mas você provavelmente precisará de uma home page separada para apresentar seu projeto aos usuários finais e fornecer downloads, pois os recursos de download do GitHubs não são tão bons assim.
BitBucket
+ Git / Mercurial
+ Permite repositórios privados de graça, até 5 usuários
Eu não usei o BitBucket o suficiente para fazer um comentário real. O único recurso que o diferencia é que a hospedagem privada é gratuita, enquanto o GitHub cobra e o Codeplex não o oferece.
Código do Google
O Google Code não é mais uma opção.
- A criação do projeto está desativada desde março de 2015 e o serviço do Google será encerrado permanentemente em 25 de janeiro de 2016 , pois os serviços concorrentes são simplesmente melhores.
- É feio e muito complicado para procurar o código fonte (o link está um pouco enterrado)
Eu não o usei, então não quero dizer que é ruim - não é. Muitos projetos o utilizam e são muito estáveis e robustos, não ouviram muito mal de nenhum desenvolvedor. No entanto, por uma questão de opinião pessoal e subjetiva, o 'design' me deixa de fora.
SVN vs. Git / Mercurial
Para reiterar meu comentário acima sobre o SourceForge ser obsoleto: Isso é obviamente um pouco duro. No entanto, acredito que o SVN é prejudicial para projetos de código aberto. Primeiro de tudo, requisitos de metadados estranhos para ignorar arquivos. No Git ou mercurial, você tem um arquivo chamado .gitignore ou .hgignore na raiz da sua árvore de origem, que inclui uma lista de arquivos / diretórios / padrões a serem ignorados. Sem svn mágico: ignore os metadados na pasta .svn. Isso por si só sopra SVN fora da água para mim. Se eu iniciar um novo projeto do Visual Studio, preciso aplicar esses metadados mágicos, enquanto que com o Git / mercurial eu apenas copio um arquivo e pronto.
Então, a capacidade de bifurcar, aplicar patches e enviar uma solicitação de recebimento é fantástica, especialmente para patches pequenos / únicos.
Por último, mas não menos importante, o SourceForge ainda é MUITO complexo para o meu gosto. Não é um host ruim, mas mostra realmente sua idade IMHO. Dito isto, ainda é robusto e tem muitos espelhos em todo o mundo. Além disso, o Bug Tracker é muito mais sofisticado que os outros.
Além disso, se o seu projeto, por algum motivo, exigir regras estritas de contribuição (o que pode fazer sentido, por exemplo, proteção legal para garantir que o código comprometido seja legalmente contribuído legalmente), um sistema tradicional como o SVN hospedado no SourceForge pode funcionar.
Edit: Não sabia que o SF finalmente distribuiu hospedagem. Como dito acima, é robusto, mas não é mais o 'garoto legal', e acho isso muito complexo.
TL; DR
Para qualquer projeto de pequeno a médio porte, recomendo o GitHub, para pequenos projetos em que você também deseja um bom site, eu utilizaria o CodePlex e, em projetos particulares, o BitBucket. Para grandes projetos que exigem um rastreador de bugs muito sofisticado, muitos recursos extras e um site 'real', considere o Source Forge.