GitHub se ha convertido en una de las plataformas más utilizadas por todo tipo de desarrolladores que quieren gestionar su código, actualizaciones y colaborar con otros programadores.
Aunque no seas programador, quizás te suene porque Microsoft compró GitHub en 2018 por una cantidad ingente de dinero y la noticia apareció en muchos medios de comunicación. Aquí vamos a explicarte qué es GitHub y para qué sirve exactamente. Puede que aunque no seas un desarrollador experimentado, puedas encontrarle la utilidad.
GitHub es una plataforma de control de versiones a la que se accede de forma online, es decir, que no lo instalas en tu ordenador, si no que se accede desde Internet. Gracias a GitHub cualquier desarrollador puede subir su proyecto al repositorio y tener una hoja de ruta de todos los cambios que se haya realizado en el proyecto.
Además, es colaborativo. Desde GitHub varios desarrolladores pueden gestionar y colaborar en un mismo proyecto, viendo en cada momento quién está realizando los cambios y en qué parte del proyecto los ha hecho.
GitHub es el sistema de control de versiones de código abierto más utilizado en el mundo, con más de 90 millones de desarrolladores que lo usan para gestionar su código y colaborar con otros desarrolladores.
GitHub es gratis, aunque tiene algunos planes de pago destinado a empresas y organizaciones, pero antes de seguir, vamos a aclarar algunos conceptos, como qué es un control de versiones y qué es Git.
Qué es un control de versiones
Un sistema de control de versiones garantiza la integridad del código maestro cuando se tiene que realizar cualquier tipo de cambio. Si un programador tiene creado un proyecto y tiene que modificarlo en cualquiera de sus partes, corre el riesgo que, con la modificación, la aplicación deje de funcionar correctamente.
Encontrar el problema en un software con miles o millones de líneas de código puede ser un verdadero dolor de cabeza. Con el control de versiones se puede visualizar todos los cambios que se hayan realizado en el código de un archivo.
Cuando un desarrollador tiene que modificar parte del código no lo hace en el repositorio del máster original del código, si no que crea una bifurcación.
Cuando ha terminado de realizar los cambios en la bifurcación y se comprueba que todo está correcto, se puede fusionar al proyecto principal. Todo esto queda registrado en el control de versiones y si al fusionar el proyecto se crea un conflicto con otra parte del código, se puede volver atrás.
Hasta ahora, es sistema de control de versiones es el sistema más utilizado por todos los desarrolladores de software del mundo, no hay mejor forma de gestionar proyectos.
Que es Git
Git es un sistema de control de versiones desarrollado por Linus Torvalds (el de Linux) y su principal característica es que es un sistema distribuido. La diferencia con un control de versiones centralizado es que cualquiera que tenga acceso al repositorio, podrá realizar las bifurcaciones y fusiones de partes del código en lugar de modificar un código fuente principal. Los proyectos también se pueden dividir en distintas ramas para que la gestión global del proyecto sea mucho más clara para todos los colaboradores del proyecto.
Por ejemplo, un desarrollador puede estar trabajando en un nuevo diseño de la web, mientras otro gestiona un bug que existe en un menú. Los dos saben qué está haciendo el otro en todo momento y que sólo se podrá fusionar al proyecto principal el nuevo diseño cuando se haya resuelto el bug del menú.
Como todo buen gestor de versiones, Git puede volver atrás si al fusionar todas las partes de un proyecto, este tiene un problema. Como verás, GitHub es prácticamente lo mismo que Git, pero online y con una interface de usuario mucho más sencilla ya que Git, sólo usa una consola de comandos.
Cómo funciona GitHub
Antes de nada, debes de saber que cualquiera puede darse de alta en GitHub. Puede que no tengas ni idea de programar y que no le encuentres ninguna utilidad, pero te puedes dar de alta si quieres desde aquí.
Pero si sólo quieres descargar alguna aplicación que esté alojada en GitHub, ni siquiera hace falta que tengas una cuenta creada, ya que el acceso es público, si el desarrollador así lo ha configurado. Puedes buscar un proyecto, ver todas las modificaciones que se han hecho y descargarlo, todo o parte de este, para modificarlo o usarlo en tu ordenador.
Hay desarrolladores que suben sus proyectos a GitHub para que los usuarios lo descarguen, como un repositorio de plugins de WordPress, pero con software de cualquier tipo.
Descargar un proyecto en GitHub
Vamos a ver cómo descargar un proyecto desde GitHub a modo de ejemplo. Lo primero que vamos a hacer es acceder a la página principal de GitHub.
En la parte superior de la pantalla verás un buscador. Esto generalmente no lo usarás, ya que el desarrollador te facilitará la URL directa, pero como estamos probando vamos a poner algo muy común: Hello Word.
En seguida verás el número de repositorios que ha encontrado, más de 43 mil en nuestro caso, un selector para filtrar los resultados y a la izquierda las estadísticas y el tipo los tipos de lenguaje de los repositorios. Vamos a seleccionar HTML .
Entra en cualquiera de ellos y verás los archivos del proyecto, que en nuestro caso sólo encontraremos uno y si hacer click en el verás el código en la pantalla. Ese código lo puedes copiar si quieres y si tienes una cuenta y el propietario lo permite, incluso crear una bifurcación (branch) para editarlo y luego enviar las modificaciones para añadirlas al máster si son aceptadas.
Si lo que quieres es descargar el proyecto para modificarlo o usarlo de forma local, puedes acceder al botón de Code y verás una opción para Download ZIP, lo que descargará en un archivo comprimido todos los archivos del proyecto.
Esto es un ejemplo muy básico, pero la estructura de GitHub no cambia mucho para otro tipo de proyectos más serios. Por ejemplo, en el caso de que se trate de una aplicación para descargarla, puedes encontrar un enlace con el instalador.
También puedes encontrar los usuarios que han contribuido en el proyecto y los lenguajes de programación que se han utilizado. Como verás, todo es muy abierto y transparente en GitHub, aunque también se pueden crear repositorios privados si es necesario.
Cómo crear un repositorio en GitHub
Si lo que quieres es crear tu propio repositorio tiene que darte de alta en la plataforma. te pedirán una cuenta de correo que tienes que verificar. Con la cuenta gratuita podrás crear todos los repositorios que necesites, ya sean estos públicos o privados, pero tendrás algunas limitaciones, como 500 MB de espacio para almacenar tus repositorios.
Para crear un repositorio verás que en la pantalla principal puedes hacerlo y seleccionar si quieres que sea público o privado. Sólo tienes que poner el nombre del repositorio que quieres crear.
Y ya está, repositorio en GitHub creado. Ahora puedes subir los archivos que tengas o importarlo, si lo tienes en otra plataforma. También puedes conectare por SSH si quieres. A partir de ahora puedes añadir usuarios al proyecto, crear bifurcaciones, atender las peticiones de los cambios que se realicen y todo lo que te proporciona GitHub.
Conclusión
GitHub funciona y lo hace muy bien. Es un sistema de control de versiones Git con un acceso online que contempla todas o la mayoría de las necesidades que los desarrolladores actuales necesitan.
Si no eres desarrollador no tiene mucho sentido crear un repositorio, pero algunos usuarios le dan utilidades personales, como controlar los cambios que hacen en su WordPress o incluso escribir documentos y tener un control de los cambios.
En cualquier caso, GitHub es una plataforma segura, con buenas opciones y con un plan gratuito que satisface las necesidades de millones de programadores.