En el foro de MV he propuesto que añadan GitHub a las redes de perfil (¡dad manita para darle visibilidad a la propuesta y que lo añadan!) pero como las cosas de palacio van despacio mientras tanto propongo que se vaya haciendo una lista.
Sé que aquí más de uno lo usamos pero los he visto de pasada y he ido perdiéndoles el rastro, así que os animo a que los posteéis (aunque no lo uséis mucho) y vamos recopilando mientras tanto.
EDIT: Ampliado también a BitBucket.
A grandes rasgos: un repositorio Git es un almacén de archivos (generalmente de texto, aunque también soporta binarios) con versionado, de tal forma que puedes subir tus proyectos y estos quedarán guardados y versionados, es decir, se guarda el histórico de tu proyecto. Gracias a ello puedes volver a cualquier punto en el pasado de forma cómoda, ver los cambios que se han ido realizando o incluso trabajar en "lineas del tiempo paralelas" (llamadas branches), por ejemplo para implementar una funcionalidad experimental sin romper tu código base... y luego mezclarlas cómodamente en la línea temporal principal.
Git fue desarrollado por Linus Torvalds, harto de las limitaciones del resto de sistemas de versionado, y liberado a la comunidad. Desde entonces, se ha impuesto como estándar de facto.
Aunque sea para pequeños proyectos, es genial. ¿A quién no le ha pasado romper un proyecto haciendo un cambio, romper todo, y no poder volver atrás porque ya has guardado ? ¿O romper algo y no saber exactamente qué habíamos cambiado? Con Git todo esto se acabó.
GitHub es un proveedor gratuito de repositorios Git públicos con una interfaz web MUY cómoda (y programas para desktop muy sencillos de usar.) Se podría decir que es el devianART de los programadores (salvando las distancias.)
Por defecto los repositorios de GitHub son públicos: todo el mundo puede ver y descargarse tu código. GitHub favorece el desarrollo colaborativo, a modo de red social. Aparte de las típicas funcionalidades como comentar código, issue tracker, wiki, etc. permite realizar forks de repositorios, es decir, llevarte un repositorio completo a tu cuenta y trabajar con él en forma paralela. Una vez hayas realizado cualquier trabajo en el repositorio, puedes realizar un "pull request" si te interesa que lo añadan a la línea principal de desarrollo del proyecto. Ideal para el software libre.
Si aún no usas GitHub te animo a probarlo. No sólo es útil para los desarrolladores, sino que además es un punto genial para recopilar tus proyectos, una suerte de portfolio para desarrolladores (un gran complemento a los CV, por cierto.) Y te obliga a hacer buen código, aunque sea por vergüenza por si lo ve alguien xD
Comentar también que GitHub también ofrece Gist. Una especie de PasteBin pero también colaborativo y versionado. De hecho todo Gist es a su vez un repositorio GitHub completo.
Empezar a usar Git puede asustar si no has usado nunca ningún sistema de versionado, sobre todo si quieres tener dominado el tema de branches y demás. El truco es empezar poco a poco, simplemente usarlo y ya irás aprendiendo. Versiona un proyecto y punto.
Sin embargo, desde GitHub sacaron aplicación con GUI que es sota-caballo-rey. MUY MUY fácil de usar.
http://windows.github.com/
http://mac.github.com/
http://eclipse.github.com/
Yo lo sigo usando por consola por temas de comodidad (y porque la aplicación no está para Linux) pero reconozco que la aplicación está muy pulida... y no sólo funciona con GitHub, sino con repositorios Git en general. ¡Probadla!
Recursos: