En este artículo os presento una introducción a Git y GitHub, reparando en sus características, funcionalidades y diferencias. Aprenderéis todo lo necesario para entender el funcionamiento de estas herramientas de código abierto y comenzar a usarlas. Cuando las descubráis, no volveréis a programar sin ellas.
¡Empecemos!
Git es una herramienta de software libre creada por Linus Torvalds, ingeniero de software internacionalmente conocido por ser el creador y desarrollador del núcleo del sistema operativo Linux.
Git es un software de control de versiones. Los controladores de versiones son aplicaciones que tienen como objetivo facilitar el proceso de desarrollo de software, particularmente en entornos donde intervienen múltiples programadores sobre proyectos relativamente complejos.
Para ello, estas herramientas realizan un seguimiento de todos los cambios realizados sobre los archivos de código fuente a lo largo del tiempo. Gracias a ello, cuando surgen errores, es mucho más sencillo comparar las diferentes versiones del software y volver a una versión anterior si es necesario.
De esta manera, se obtiene un control mucho mayor del código fuente de la aplicación a lo largo del tiempo, y se optimiza la depuración de errores.
Entre todos los sistemas de control de versiones existentes, Git es el rey del mercado debido a su potencia, fiabilidad y licencia de software libre. A continuación analizamos sus funcionalidades y las ventajas que aporta.
De forma general, podemos decir que Git facilita el desarrollo y el mantenimiento de aplicaciones simples o complejas, programadas tanto por una persona como por varias, llevando un registro de los cambios que se producen sobre el código.
De esta forma, en primer lugar, Git permite devolver todos los archivos de código fuente a un estado anterior, facilitando la restauración de respaldos. Además, permite realizar el seguimiento sobre todos los archivos, varios o uno solo. No es una cuestión de todo o nada.
En segundo lugar, Git es capaz de diferenciar el trabajo realizado por diferentes programadores, permitiendo restaurar únicamente las modificaciones llevadas a cabo por uno, todos o varios de ellos.
Además, Git detecta conflictos entre programadores y los notifica. Es decir, detecta los cambios realizados por más de un programador sobre una misma parte del código y los notifica, permitiendo al programador realizar la opción más oportuna. De esta manera, múltiples programadores pueden realizar cambios sobre un mismo archivo de código sin miedo a que surja algún error.
En tercer lugar, cabe destacar que Git ofrece integración con diferentes entornos de desarrollo, entre los que destaca Visual Studio Code, uno de los editores de texto más populares y potentes de la actualidad. Si utilizas este magnífico editor, te recomiendo nuestro artículo sobre sus mejores extensiones.
En cuarto lugar, una de las mayores ventajas de Git es que no tiene límite en cuanto a número de proyectos y que es gratuito. Gracias a ello, es una herramienta totalmente accesible para cualquier programador de forma ilimitada.
Por último, cabe destacar que Git está diseñado para ser complementado con GitHub, de forma que sus funcionalidades y ventajas crecen exponencialmente. Más adelante te explico las principales características de esta herramienta.
Para empezar a emplear Git, lo primero que debes hacer es instalarlo en tu equipo. Para ello, deberás acceder al apartado de descargas de su sitio web oficial, seleccionar la versión acorde a tu sistema operativo, descargar el ejecutable y pulsar siguiente las veces que corresponda.
De esta manera, la instalación se habrá realizado y tendremos en nuestro equipo una carpeta con el nombre Git. Para comenzar a utilizar este software, debemos acceder a su consola de comandos, denominada Git Bash. La forma más rápida de acceder a ella es abrir el directorio que contiene el proyecto sobre el que vamos a trabajar, hacer clic derecho sobre cualquier parte en blanco y seleccionar Git Bash Here.
Imaginemos que nuestro proyecto se compone únicamente de un archivo HTML llamado prueba-2.html. En este caso, abriremos la consola de Git de la siguiente manera:
Una vez hemos accedido a la consola de comandos, podremos empezar a trabajar sobre las versiones de nuestro proyecto mediante comandos.
A continuación os muestro los comandos principales de Git, con los que podréis empezar a trabajar con esta herramienta y aprovechar sus funcionalidades de forma rápida y sencilla. Si quieres conocer el listado completo, podrás encontrarlo en la documentación oficial de Git, donde se incluye un listado completo con todos los comandos.
El comando git init se ejecuta una única vez por cada proyecto. Sirve para que Git se prepare para controlar las diferentes versiones de los archivos de código fuente. Aunque no será visible para el programador, Git creará dos áreas de trabajo con las que gestionará todas las versiones de nuestro proyecto:
Una vez escritas las palabras git init y pulsado enter, si estamos empleando Windows, accediendo a Vista y permitiendo la visualización de elementos ocultos, veremos que Git ya nos ha creado un directorio oculto. Esta carpeta será utilizada para gestionar el control de versiones de nuestro proyecto.
Este comando se utiliza para indicarle a Git los archivos o directorios sobre los que tiene que realizar un seguimiento. Se ejecuta escribiendo las palabras git init junto al nombre del archivo o directorio sobre el que queremos trabajar. Al ejecutarlo, los archivos indicados pasan al área de ensayo.
Este comando se encarga de trasladar los archivos ubicados en el área de ensayo al repositorio local. Es decir, se encarga de efectuar el respaldo de la versión de nuestro proyecto, de forma que podamos recuperarla en el futuro.
Este comando sirve para realizar de una sola vez el comando git add y git commit. Permite añadir una descripción del respaldo entre comillas. Es la forma más rápida de realizar copias de las versiones de nuestro proyecto. Siguiendo con nuestro ejemplo anterior, el código sería así:
Git status tiene como función mostrar al programador el estado del área de ensayo. Cuando se ejecuta, muestra los archivos del proyecto que se encuentran en el área de ensayo y los que no, así como aquellos cuyos cambios no han sido guardados. Una vez hemos realizado un commit sobre nuestro proyecto, es decir, cuando los archivos están respaldados correctamente, muestra lo siguiente:
Estos dos comandos muestran el listado de respaldos que hemos realizado sobre nuestro proyecto.
Ejecutaremos este comando para restaurar uno de los respaldos que hayamos creado previamente. Para ello, únicamente tendremos que añadirlo junto con el código del respaldo.
Git y Github son herramientas diferentes, pero complementarias. GitHub es una plataforma que permite para almacenar los respaldos creados mediante Git a la nube. De esta manera, conseguimos que las copias de las versiones de nuestro proyecto no estén únicamente en nuestro disco duro, previniendo posibles problemas que pueden surgir al trabajar en local.
Para emplear GitHub, accederemos a su web oficial y, si es la primera vez que lo utilizamos, nos registraremos desde el siguiente enlace. Una vez registrados, pulsaremos el botón «Create Repository» que se encuentra en la parte superior izquierda.
A continuación, añadiremos un nombre para el repositorio, una descripción, indicaremos si el repositorio es público o privado y haremos clic sobre «Create Repository». Veremos que se nos presentan cuatro maneras de crear el repositorio:
En caso de tener un repositorio en Git y querer subirlo a GitHub, elegiremos la tercera opción. Una vez seleccionada, se nos mostrará un código. Copiaremos dicho código y lo pegaremos en nuestra consola de Git. De esta manera, todo lo que tenemos en nuestro repositorio local se subirá a GitHub, desde donde podremos gestionarlo.
Git y GitHub son dos herramientas complementarias que ofrecen grandes funcionalidades y ventajas a la hora de llevar a cabo proyectos de software. Permiten llevar controlar totalmente el estado de los diferentes archivos de código fuente a lo largo del tiempo, facilitando la revisión de código, la depuración de errores y la realización de todo tipo de pruebas.
Espero que esta introducción a Git y Github os haya servido para conocer estas herramientas, entender su funcionamiento y comenzar a utilizarlas. Os esperamos en próximos artículos sobre la temática. No dudéis en dejarme un comentario en esta publicación.
¡Os espero en el siguiente artículo!
En este artículo, aprenderás qué es el Lazy Loading y cómo implementarlo fácilmente en tu… Leer más
En esta guía práctica, te explicamos qué es el presupuesto de rastreo, por qué es… Leer más
¿Alguna vez te has encontrado con un mensaje que te invita a actuar, ya sea… Leer más
Una de las preguntas más comunes entre los desarrolladores web que comienzan a usar JavaScript… Leer más
Descubre qué es y para qué sirve la preimpresión digital para conseguir una buena impresión… Leer más
Ampliamos información para las redes sociales. Descubre cómo gestionar correctamente los consentimientos necesarios en las… Leer más