Google Code + SVN o GitHub + Git

Permítanme comenzar diciéndoles que nunca he usado nada aparte de SVN y que también soy un usuario de Windows.

Tengo un par de proyectos simples que son de código abierto, otros están en path cuando estoy feliz de liberar su código fuente. De cualquier manera, estaba pensando en usar Google Code y SVN para compartir el código fuente de mis proyectos en lugar de proporcionar un enlace a la fuente en mi website. Esto siempre ha sido un problema porque tuve que actualizar los binarys y el código cada vez que lancé una nueva versión. Esto también me ayudaría a tener una copy de security de mi código en algún lugar en lugar de solo mi máquina local (solía tener un server local de Subversion en ejecución).

Lo que quiero de un service como este es muy simple … Solo quiero un lugar para almacenar mi código fuente que las personas pueden download si lo desean, eso me permite controlar las revisiones y proporcionar un sistema de problema / error simple y fácil para que la gente puede enviar errores y cosas así. Supongo que ambos tienen esto.

Pero no quiero alojar binarys en sus sitios web. Quiero que esto se aloje en mi website para que pueda controlar las statistics de descarga con mis propios scripts. Tampoco necesito páginas wiki, ya que prefiero tener toda la documentation en mi propio website. ¿Alguno de estos services proporciona una forma de "desactivar" las características como wiki y descargas y no mostrarlas en absoluto para mi (s) proyecto (s)?

Ahora, estoy seguro de que hay muchas ventajas y desventajas sobre el uso de Google Code con SVN y GitHub con Git (por supuesto), pero esto es lo importante para mí en cada una, y por qué me gustan:

Código de Google:

  • Al igual que con cualquier página de Google, la complejidad es casi inexistente
  • Todos (o casi todos) tienen una count de Google, lo que es bueno si las personas quieren informar problemas al usar el sistema de problemas.

GitHub:

  • Puede (o no) ser un poco más complejo (no es un problema para mí) que las páginas de Google pero …
  • … tiene una interfaz mucho más bonita que el service de Google
  • Necesita que las personas se registren en GitHub para publicar sobre problemas
  • Me gusta el hecho de que con Git, tienes tus propias revisiones localmente (¿puedo usar TortoiseGit para esto o?)

Básicamente eso es todo. No mucho, lo sé …

¿Qué otros pros y contras comunes me puedes decir sobre cada sitio / software? Tenga en count que mis proyectos son simples, probablemente soy el único que alguna vez desarrollará estos proyectos en estos repositorys (o tal vez no, pero por ahora estoy).

No he tenido experiencias particularmente positivas con TortoiseGit. Me gusta mucho el model de git, pero todo se me hace extraño cuando bash usarlo en Windows. A menudo termino usando la versión de cygwin, pero incluso eso está lejos de ser perfecto.

Honestamente, para proyectos pequeños que quieras de código abierto, probablemente solo me gustaría alojar el código de Google y tratar con SVN por el momento. Puede ser diferente si ya eres un experto en git, pero no estoy seguro de que la curva de aprendizaje valga la pena para un pequeño proyecto basado en Windows (especialmente teniendo en count el número de desarrolladores de Windows que probablemente serán desactivados por eso).

Google Code está respaldando a Mercurial ahora . Mercurial debería darle la mayoría de los beneficios de Git, pero obtendrá el vencimiento de Google Code. También tiene la opción de ir con subversión allí también si lo desea.

Google Code Project Hosting ahora es compatible con Git .

Hay dos ventajas principales para GitHub:

  1. Utiliza git (duh!)
  2. Es un ambiente muy "social".

GitHub hace que sea muy fácil hacer contribuciones al código de otras personas, y es fácil para ellos integrarlo de nuevo. También hay muchos y buenos ganchos post-commit que tienen incorporados; por ejemplo, cuando me comprometo con uno de mis repositorys, se envía un correo electrónico a mi list de anunciar Grupos de Google y aparece un bot en el canal de irc, da un resumen de los cambios y vuelve a aparecer. Sé de al less un service de CI que se activa en las confirmaciones de GitHub (o más bien, empuja).

Si planeas que se trate de un proyecto en solitario bastante pequeño, probablemente no encontrarás que la mayoría de las funciones de GitHub sean tan útiles.

Estas son las respuestas para Google Code (que uso y estoy muy contento con):

Pero no quiero alojar binarys en sus sitios web

Por lo tanto, no lo haga; nada en los términos de service de Google requiere que lo haga.

Tampoco tengo la necesidad de páginas wiki

Las páginas wiki, como casi todas las tabs en un sitio GC, se pueden deshabilitar y ocultar.

¿Por qué no crear una página de Google Code para su proyecto (tarda unos 2 minutos y es gratis) y jugar con las opciones de administración para ver si hace lo que quiere?

Github ahora es compatible con Subversion http://slashdot.org/submission/1232328/

Parece que Google Code se ajusta mejor a tus necesidades, es decir, el uso de SVN (Mercurial ahora, pero SVN, ya que es con lo que te sientes más cómodo). En cuanto a sus otras características que no te importan tanto, entonces sí puedes inhabilitarlas deshabilitando su pestaña en la interfaz de usuario.

Soy un fanático de Google Code, es simple y directo.

SVN fue el primer tipo de control de fuente que he usado. Funcionó por un time, pero nunca miré hacia atrás después de cambiar a GIT. Parece que el mayor problema que le impide ir a git es una buena herramienta para usar. Utilicé tortugas SRV por un time e intenté torturarme cuando hice la transición pero no estaba satisfecho.

Prueba Git Extensions , es la mejor interfaz de interfaz gráfica de usuario para cualquier sistema operativo.

¿Por qué no usar ambos? Puede usar el código de google para alojar el proyecto y usar github como su repository. Echa un vistazo a robotium.org como un ejemplo.

Está claro que git está ganando y es una gran herramienta (pero necesita time). Con google code git support, no hay una gran diferencia entre github / gcode. Si le gusta tener un repository privado y público en el mismo proveedor que github, también lo es. También estoy usando Eclipse y egit plugin (3.7.x) es parte del proyecto eclipse, pero en la mayoría de los casos necesita ser instalado como complemento.

¿Qué pasa con bitbucket (para git y mercurial) o Team Foundation Service (para git y TFS (microsoft CVS))? Ambos proporcionan 5 repositorys privados gratuitos y soporte git. Además, Bitbucker ofrece un cliente git para Mac y Windows y TFS ofrece MUCHAS herramientas de administración de proyectos.

Creo que bitbucket y tfs no son tan sociales como github, pero si necesitas repositorys privados, tal vez quieras perder esa "sociabilidad"

Espero que esto traiga a la table algo de luz.