He estado leyendo a través de la acumulación de preguntas respondidas sobre SO con respecto a "Cómo promover un proyecto de código abierto". No es sorprendente que muchas de las respuestas apunten a la gente a SoureForge / FreshMeat y otros sitios, etc., así como a los blogs y otras cosas. Esto me hizo pensar dónde es el mejor lugar para organizar un proyecto y por qué.
Como mi primer proyecto actualmente está alojado en CodePlex, comencé a leer los resultados de búsqueda de Google para recopilar información sobre las ventajas y desventajas de cada uno; Sin embargo, las comparaciones que encontré son bastante anticuadas (más de 2 años).
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.
Por lo tanto, la siguiente pregunta se convierte en "¿Debería alojar mi proyecto en varios sitios?", A lo que la siguiente publicación proporciona la respuesta esperada (¡afortunadamente! Ya que sería difícil de mantener).
Hospedar un proyecto de código abierto en varios sitios
Según el estado actual de varios sitios de alojamiento de código abierto, como CodePlex, GitHub, Google Code, SourceForge, etc., etc., ¿hay ventajas / desventajas notables de un sitio sobre el otro? es decir, ¿debo seguir con CodePlex o me estoy perdiendo al no usar una de las alternativas? ¿Se generará más tráfico a un proyecto nuevo y desconocido?
Planeo explorar cada sitio con más detalle para ver qué ofrecen todos, pero dado el vasto conocimiento de las buenas personas en SO, pensé que comenzaría con esta pregunta primero.
ACTUALIZADO
Según la respuesta de Erjiang a continuación ... Actualmente estoy usando Mercurial para el control de versiones, y estoy abierto a cualquier cosa que no sea TFS. Además, mi proyecto actual es solo yo desarrollando, pero los proyectos futuros pueden ser colaborativos, por lo que vale la pena considerar ...
fuente
Respuestas:
Editar 2015-08-01: Esta respuesta sigue obteniendo puntos de vista y votos. Es más que antiguo y me gustaría eliminarlo, pero como es la respuesta aceptada, no puedo hacer eso. Por otra parte, es el wiki de la comunidad y la comunidad lo ha mantenido actualizado. ¡Gracias por eso!
SourceForge ha cruzado al lado oscuro, haciéndose cargo del proyecto y combinándolos con Adware ( Google GIMP Sourceforge Adware ). Evitar a toda costa. A partir de ahora, GitHub sigue siendo el más popular, aunque existen alternativas (por ejemplo, BitBucket ofrece repositorios privados ilimitados de forma gratuita para hasta 5 usuarios).
Es una locura cuánto cambió el panorama en los últimos años, y si estás leyendo esto en el futuro, tal vez GitHub ya no sea el producto genial. La conclusión es: hay una gran cantidad de opciones increíbles para cualquier sistema de control de fuente que desee usar.
Antiguo 2010 siguiente información para el bien de la historia
Editar: esta respuesta ahora es antigua. En los últimos 2 años, GitHub se ha convertido en el lugar principal de Code Hosting, y cada vez que tengo que crear un nuevo proyecto OSS, no tengo la menor duda de a dónde ir. Dejando esto a continuación para referencia.
De hecho, mi publicación tiene casi 2 años (2008) ahora y ya no es del todo precisa.
¿Por qué?
Porque creo que SourceForge es insignificante ahora para proyectos de código abierto. De acuerdo, esto me meterá en muchos problemas, así que déjenme aclarar:
Estoy absolutamente convencido de que los proyectos de código abierto deben ejecutarse en un DVCS, preferiblemente git o mercurial, ya que son los más extendidos, nada en contra de Bazaar, pero creo que es un poco oscuro. ( Editar: SourceForge ahora ofrece Mercurial y Bazaar, por lo que ese argumento ya no se sostiene. Sin embargo, después de dos rediseños, creo que la imagen de SF no es demasiado grande. Para compararlos con las imágenes de las empresas: mientras que GitHub es Apple, SF es IBM, sólido como una roca, pero un poco polvoriento)
Así que si tuviera que escribir de nuevo este anuncio, sería CodePlex vs GitHub vs BitBucket , con GitHub ser el ganador. Pero esa es una declaración general, así que permítanme agregar detalles. +/- no es estrictamente Pro / Con, es más para destacar diferentes filosofías.
CodePlex
+ Real Mercurial / Git Hosting: no hay puente con errores sobre TFS, tiene Mercurial / Git
+ Wiki integrado real que permite agregar documentación rica y páginas bonitas
+ Rastreador de errores y foros de discusión incluidos
- El navegador de código fuente no es tan bueno - Las diferencias aparecen en una ventana emergente y simplemente "se sienten" complicadas
- Las solicitudes de Forks y Pull "no son tan fáciles" - la interfaz de usuario podría necesitar algo de trabajo
En general, CodePlex sigue siendo excelente, pero creo que es más adecuado para desarrolladores individuales o equipos muy pequeños porque el enfoque del sitio web está en el Wiki en lugar del código fuente. Es más una publicación que una plataforma de colaboración. Teóricamente no necesita una página de inicio del proyecto, su proyecto CodePlex puede ser su ventanilla única.
GitHub
+ Git Hosting, admite SSL / SSH
+ El gráfico de red permite ver los tenedores y lo que se combinó en qué cuando
+ Capacidad para 'mirar' proyectos: su página de cuenta es como un muro de Facebook con nuevos registros
+ Visor de diferencias súper bueno con la capacidad de comentar en cambios de una sola línea - ver aquí
+ Forking es un proceso de 2 clics, y también lo está enviando solicitudes de extracción
+ GitHub ahora tiene la herramienta GUI GitHub para Windows
- La página principal no es muy "bonita" para los no desarrolladores. Si tiene un archivo Léame en su proyecto (admite algunos lenguajes de marcado como Markdown o HTML), se muestra, pero la página inicial es el código fuente
, Wiki no es tan bueno, es Markdown, pero a veces el formato se siente demasiado complejo.
GitHub tiene una filosofía diferente a CodePlex: se trata del código fuente y de la colaboración entre desarrolladores. La página principal del proyecto es el código fuente más actualizado. Hay un Wiki separado, pero está más destinado a la Documentación que a la presentación de su proyecto. El gráfico de red es fantástico, aunque puede ser confuso una vez que hay más de aproximadamente 20 tenedores (con frecuencia cuando se anuncia un proyecto de alto perfil, todos y su perro lo bifurcan, pero la mayoría de los tenedores mueren rápidamente). GitHub escala muy bien a cualquier tamaño.
De hecho, GitHub hace que sea muy fácil para mí bifurcar un proyecto, aplicar una corrección / parche, enviarlo a mi bifurcación y enviar una solicitud de extracción al autor. Junto con el gráfico de red, es realmente fácil ver la confirmación.
Pero lo más probable es que necesite una página de inicio separada para presentar su proyecto a los usuarios finales y proporcionar descargas, ya que las instalaciones de descarga de GitHubs no son tan buenas.
BitBucket
+ Git / Mercurial
+ Permite repositorios privados gratis, hasta 5 usuarios
No he usado BitBucket lo suficiente como para hacer un comentario real. La única característica que lo distingue es que el alojamiento privado es gratuito, mientras que GitHub cobra y Codeplex no lo ofrece en absoluto.
Código de Google
Google Code ya no es una opción.
- La creación del proyecto está deshabilitada desde marzo de 2015, y el servicio de Google se cerrará permanentemente el 25 de enero de 2016 , ya que los servicios de la competencia son simplemente mejores.
- Es feo y es demasiado complicado navegar por el código fuente (el enlace está algo enterrado)
No lo he usado, así que no quiero decir que sea malo, no lo es. Muchos proyectos lo usan y es muy estable y robusto, no he escuchado mucho de ningún desarrollador. Sin embargo, como una cuestión de opinión personal y subjetiva, el "diseño" me desanima.
SVN vs.Git / Mercurial
Para reiterar mi comentario anterior sobre SourceForge siendo obsoleto: Eso es, por supuesto, un poco duro. Sin embargo, creo que SVN es perjudicial para los proyectos de código abierto. En primer lugar, requisitos de metadatos extraños para ignorar los archivos. En Git o mercurial, tiene un archivo llamado .gitignore o .hgignore en la raíz de su árbol fuente que incluye una lista de archivos / directorios / patrones para ignorar. Sin magia svn: ignora los metadatos en la carpeta .svn. Esto solo sopla SVN fuera del agua para mí. Si comienzo un nuevo proyecto de Visual Studio, necesito aplicar esos metadatos mágicos, mientras que con Git / mercurial simplemente copie un archivo y termine con él.
Entonces, la capacidad de bifurcar, parchear y enviar una solicitud de extracción es fantástica, especialmente para parches pequeños / únicos.
Por último, pero no menos importante, SourceForge sigue siendo MUY complejo para mi gusto. No es un mal anfitrión, pero realmente muestra su edad en mi humilde opinión. Dicho esto, sigue siendo robusto y tiene muchos espejos en todo el mundo. Además, el Bug Tracker es mucho más sofisticado que los demás.
Además, si su proyecto por alguna razón requiere reglas estrictas de contribución (lo que puede tener sentido, por ejemplo, protección legal para asegurarse de que el código comprometido sea realmente legalmente contribuido), entonces puede funcionar un sistema tradicional como SVN alojado en SourceForge.
Editar: No sabía que SF finalmente ha distribuido hosting. Como se dijo anteriormente, es robusto pero ya no es el 'chico genial', y lo encuentro demasiado complejo.
TL; DR
Para cualquier proyecto pequeño a mediano, recomiendo GitHub, para proyectos pequeños donde también quieres un buen sitio web, iría con CodePlex y para proyectos privados iría con BitBucket. Para los grandes proyectos que requieren un rastreador de errores muy sofisticado, toneladas de características adicionales y un sitio web 'real', considere Source Forge.
fuente
Bueno, no ha dicho qué sistema de control de fuente utiliza, lo que influye mucho en sus elecciones.
(no exhaustivo)
Soy fanático de Git, pero Mercurial también es bastante impresionante. Personalmente utilizo GitHub por sus increíbles funciones de colaboración, como solicitudes fáciles de bifurcación y extracción.
Quiero agregar que CodePlex no es muy popular en el ecosistema de código abierto fuera del campo de Microsoft, y eso es fácil de ver desde su lista más descargada. Probablemente sea una combinación de cuán naturalmente está centrado en Microsoft, y también de estigmas pasados. Si está desarrollando exclusivamente para .NET o algo similar, eso cambiará la perspectiva.
Editar: Además, diría que los desarrolladores no suelen ir al azar buscando proyectos interesantes. Usted es igualmente probable que pase inadvertido en GitHub como eres en CodePlex, pero si alguien no descubra su proyecto, que será más probable para enviar mensajes / errores de archivos / contribuir si ya tienen una cuenta en ese sitio web.
fuente
Dado que Github está creciendo bastante rápido y parece ser el más destacado entre los proyectos que veo en estos días. Conseguiría mi voto.
Pero creo que uno no tiene que significar que no puedes usar el otro. Veo muchos proyectos que usan Github para la fuente y Google Code para los documentos. Y además de eso, un enlace de Sourceforge también.
Realmente no importa lo que use como host principal, pero también le recomendaría que agregue sus proyectos en otros sitios para que sea fácil encontrarlo.
fuente
Esta pregunta parece un duplicado de esta: /programming/10490/best-open-source-project-hosting-site
Aquí estaba mi respuesta a esa pregunta: /programming/10490/best-open-source-project-hosting-site/3433969#3433969
En general, creo que los pros / contras importantes se relacionan más significativamente con las características de desarrollo ofrecidas y la audiencia principal de cada sitio, que en mi respuesta anterior paso por los cuatro sitios más populares.
fuente