Si hablamos de “social coding”, no podemos irnos sin hablar de GitHub. Es cierto que es más que conocido, pero, ¿sabemos exactamente qué es y para qué puede llegar a servirnos?
Vamos allá con nuestra pequeña guía de GitHub.
¿Qué es GitHub?
GitHub es un repositorio online gratuito que almacena código en el sistema de control de versiones Git. Desarrollado en 2008 y comprada por Microsoft en junio del 2018, actualmente continúa creciendo y manteniendo su popularidad entre los desarrolladores. Se trata de una compañía sin ánimo de lucro, que busca hacer más fácil utilizar Git como plataforma de versionado.
¿Qué es Git?
Git es un software libre y gratuito de control de versión distribuida que se encuentra diseñado para soportar cualquier proyecto con velocidad y eficiencia. Desarrollado por Linus Torvalds, permite administrar un proyecto y ordenar el código para evitar confusiones. Según una encuesta realizada a los usuarios de Stack Overflow, más del 87% de los desarrolladores utilizan Git.
En resumen, GitHub es un portal que gestiona aplicaciones que usan Git, aunque también suele actuar como red social de gente interesada en la programación, permitiéndoles incluso colaborar en distintos proyectos.
¿Y qué es una versión de control?
Se trata de un sistema que permite llevar un registro y administrar los cambios en el código de su proyecto. Hemos de tener en cuenta que a medida que un proyecto crece, el versionado se va volviendo más esencial.
Además, las versiones de control permiten trabajar de forma segura, mediante bifurcaciones y fusiones.
- Bifurcación: duplica parte del código fuente (que se llama repositorio), de manera que luego se pueden realizar cambios en esa parte y no afectar al resto del proyecto.
- Fusión: una vez que el código funciona apropiadamente, se puede fusionar con el código fuente principal.
Es importante recalcar que todos los cambios realizados se registran y pueden ser revertidos.
¿Qué se puede hacer con GitHub?
Lo único que requiere GitHub para utilizarse es una cuenta totalmente gratuita. Entre las funciones a las que podemos acceder están:
- Controlar las versiones de los proyectos: pudiendo hacer cambios, volver a versiones anteriores, crear copias de un proyecto, etc.
- Compartir el código con otros usuarios: puedes colaborar, revisar otros proyectos o pedir ayuda con el tuyo.
- Trabajar en equipo: dado que permite que varios programadores trabajen en un mismo proyecto, fomenta el trabajo en equipo.
- Ir desarrollando un portafolio: podemos utilizar los proyectos que subimos a GitHub como carta de presentación en el mercado laboral.
Ventajas
- Tener acceso a tu repositorio desde cualquier lugar de forma rápida y sencilla.
- Integración con Git.
- Facilitar la gestión de los cambios.
- Es gratuito.
- Apoyo de una comunidad amplia y activa.
- Permite el reporte de errores por parte de otros usuarios.
- Ofrece herramientas propias que complementan Git.
- Herramientas de revisión de código.
- Tiene gráficos para ver cómo trabaja una persona en su proyecto, bifurcaciones, etc.
Desventajas
- Limitación en el tamaño a la hora de subir y compartir archivos.
- Los proyectos privados solo son gratuitos hasta un cierto número de colaboradores.
- Para poder subir los proyectos gratis, deberán ser de código abierto.
Guía de uso
Vamos a ir dividiendo esta pequeña guía en distintas fases, desde aprender a configurarlo hasta las partes más importantes de su utilización.
Partes de GitHub
Con el fin de esclarecer un poco la estructura de GitHub, hablaremos de sus partes:
- Repositorio: ubicación o ruta donde se almacena la información de un proyecto.
- Branch o ramificaciones: crea una copia exacta del proyecto para hacer pruebas.
- Pull request o fusión: al subir un nuevo cambio, estas pull request pueden ser validadas o no, o incluso comentarlas.
- Tag: controlan el estado de un repositorio, proporcionando información de la versión a otros usuarios.
- Fork o bifurcación: crea un nuevo proyecto en base a uno existente, que permite hacer modificaciones y guardarlas en un repositorio propio y no en el original.
Configuración básica de GitHub
- En primer lugar, debemos instalar Git en el sistema que vayamos a utilizar para programar.
- Si no tenemos una cuenta en GitHub, deberíamos crearla. Se trata de un proceso muy ágil y sencillo.
- Si ya tenemos una cuenta, iniciamos sesión.
Preparación del código
Antes de comenzar con los pasos, debemos saber que, para usar GitHub correctamente, necesitamos estructurar el código como un sitio web típico. Por ejemplo, con un archivo index.html.
- Inicializar el directorio de código como un repositorio Git:
- Dirigirnos con la orden cd al directorio de tu sitio.
- Después utilizamos el comando git init, para convertir el directorio en un repositorio git.
- Subida del código:
- Crear el repositorio: en la parte superior derecha de la página de inicio de GitHub, haz clic en el signo + y escoge Nuevo repositorio. Ahí, puedes ponerle un nombre, añadir una descripción… Una vez terminado, se crea el repositorio, y podremos comenzar a subir archivos.
- Mediante línea de comandos: podemos usar la orden git remote add origin (enlace al repositorio de GitHub). Después, usamos git add –all, git commit -m ‘añadiendo mis archivos al repositorio’. Por último, usamos git push -u origin master. A continuación, creamos la rama gh-pages: en la página del repositorio, presionamos el botón de Branch: master, escribimos gh-pages en el campo de texto y presionamos Create Branch: gh-pages.
- Interfaz gráfica de usuario de Git.
¿Cuándo es bueno usar GitHub?
GitHub es ideal para gestionar desarrollos, compartir los proyectos y mejorar el software mediante comentarios que aportan valor al desarrollo.
Y tú, ¿crees que nos ha faltado algo? ¡Déjanos tus opiniones en los comentarios!