Eu tenho lido o backlog de perguntas respondidas no SO sobre "Como promover um projeto de código aberto". Não surpreendentemente, muitas das respostas apontaram as pessoas para o SoureForge / FreshMeat e outros sites, etc., bem como para blogs e outros enfeites. Isso me fez pensar onde é o melhor lugar para hospedar um projeto e por quê?
Como meu primeiro projeto está atualmente hospedado no CodePlex, comecei a percorrer os resultados de pesquisa do Google para coletar informações sobre os prós / contras de cada um; no entanto, as comparações que encontrei são bastante antigas (mais de 2 anos).
http://www.stum.de/2008/12/13/sourceforge-vs-codeplex/
http://www.developmentnow.com/blog/2006/11/codeplex-vs-sourceforge/
http: // www. spacesocket.com/forum/thread-6654.html
etc ...
Portanto, a próxima pergunta se torna "Devo hospedar meu projeto em vários sites", para o qual o post a seguir fornece a resposta esperada (felizmente! Pois isso seria uma tarefa difícil de manter).
Hospedando um projeto de código aberto em vários sites
Com base no estado atual de vários sites de hospedagem de código aberto, como CodePlex, GitHub, Google Code, SourceForge, etc, etc, existem alguns prós / contras notáveis de um site em relação ao outro? ou seja, devo ficar com o CodePlex ou estou perdendo por não usar uma das alternativas? Trará mais tráfego para um projeto novo e desconhecido?
Planejo explorar cada site com mais detalhes para ver o que todos oferecem, mas, dado o vasto conhecimento das pessoas boas sobre SO, achei que começaria com essa pergunta primeiro.
ATUALIZADA
Conforme a resposta erjiang abaixo ... Atualmente, estou usando o Mercurial para controle de versão e estou aberto a qualquer coisa que não seja o TFS. Além disso, meu projeto atual é apenas eu, mas projetos futuros podem ser colaborativos, portanto vale a pena considerar ...
fonte
Respostas:
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.
fonte
Bem, você não disse qual sistema de controle de origem usa, o que influencia muito suas escolhas.
(não abrangente)
Sou fã do Git, mas o Mercurial também é incrível. Eu pessoalmente uso o GitHub por seus incríveis recursos colaborativos, como solicitações fáceis de bifurcação e recebimento.
Quero acrescentar que o CodePlex não é muito popular no ecossistema de código aberto fora do campo da Microsoft, e isso é fácil de ver na lista mais baixada. Provavelmente é uma combinação de como é naturalmente centralizado na Microsoft e também de estigmas do passado. Se você estiver desenvolvendo exclusivamente para .NET ou algo semelhante, isso mudará a perspectiva.
Edit: Além disso, eu diria que os desenvolvedores não costumam procurar aleatoriamente projetos interessantes. Você é a mesma probabilidade de passar despercebida no GitHub como você está no Codeplex, mas se alguém não descobrir o seu projeto, eles estarão mais propensos a enviar mensagens / erros de arquivo / contribuir se eles já têm uma conta no site.
fonte
Como o Github está crescendo muito rápido e parece ser o mais proeminente entre os projetos que vejo atualmente. Seria o meu voto.
Mas acho que um não precisa significar que você não pode usar o outro. Eu vejo muitos projetos que usam o Github para a fonte e o Google Code para os documentos. Além disso, um Sourceforge também está vinculado a ele.
Realmente não importa o que você usa como host principal, mas eu recomendo que você adicione seus projetos nos outros sites também, para que seja fácil encontrá-lo.
fonte
Esta pergunta parece ser uma duplicata desta: /programming/10490/best-open-source-project-hosting-site
Aqui estava minha resposta para essa pergunta: /programming/10490/best-open-source-project-hosting-site/3433969#3433969
Em geral, acho que os prós / contras importantes se relacionam mais significativamente aos recursos de desenvolvimento oferecidos e ao público principal de cada site, que, na minha resposta acima, passo pelos quatro sites mais populares.
fonte