El otro día hablando sobre proyectos con mis compañeros descubrí, que a diferencia de lo que pensaba algunos de ellos no alojan sus proyectos en GitHub. Por lo que con toda mi curiosidad quise saber cual es la diferencia entre los dos.

Ambos pueden usar Git como sistema de control de versiones. Como “punto a favor” Bitbucket soporta Mercurial aunque ninguno de los dos Subversion. Por lo que Bitbucket ganaría este punto, aunque no es muy significativo.

Repositorios públicos vs privados. En GitHub no te permite tener repositorios privados a menos que pagues una mensualidad (o seas estudiante). Por el contrario Bitbucket si que ofrece la posibilidad de tener repositorios privados sin ningún coste añadido. Por lo que ambos tienen ventajas e inconvenientes.

El punto anterior está sub-editado a la forma que tienen de monetizar ambos servicios. GitHub factura en función de la cantidad de repositorios privados que quieras tener (max. 50 por 50$/mes), por el contrario Bitbucket monetiza el servicio basándose en el número de colaboradores (ilimitados por 200$/mes).

La comunidad de Github es 4 veces la de Bitbucket por lo que en este caso no hay discusión alguna, 4M usuarios a 1M. Además curiosamente encontré algunos proyectos alojados en ambos sitios, por ejemplo GitHub hospeda el Kernel de Linux, MongoDB y Neo4j y Bitbucket Aldrin y TortoiseHg entre otros. Por lo que va a ser bastante más fácil encontrar información sobre GitHub.

Para autenticarnos Githb solo ofrece GitHub mientras que Bitbucket a parte de ofrecer la autenticación de GitHub ofrece la de Facebook, Twitter, OpenID y Google. En este caso no hay discusión alguna.

En conclusión, creo que la decisión depende mucho del tipo de proyecto. Yo personalmente uso GitHub porque es el primero que me enseñaron. Uso repositorios privados usando el email de la facultad, pero si no los tuviera probablemente usaría Bitbucket por sus similitudes y la probabilidad de “ocultar” los proyectos de clase.

La información la he recopilado básicamente de las dos fuentes siguientes: