La guía para principiantes de Git

Git es un programa maravilloso. Es una utilidad de control de versiones que le permite administrar sin problemas el historial de edición de un archivo. Si bien esto puede parecer simple y poco impresionante, la fortaleza de Git radica en el hecho de que puede extender este historial a grupos completos de archivos y directorios.

Esto significa que es posible usar Git para rastrear cada cambio en cada archivo para cada directorio. Esto es muy útil si está realizando un proyecto en el que desea tener una instantánea continua de todo lo que está haciendo.

¿Qué es Git?

En esencia, Git es un programa simple de seguimiento de historial. En eso, rastrea los cambios en diferentes versiones de un archivo. La forma en que funciona es que cada vez que cambia un archivo, Git creará un hash para esa versión de archivo específica.

A partir de ahí, compara y analiza estos hashes con el «árbol Git» del repositorio. Hacerlo de esta manera le permite a Git almacenar solo la diferencia entre múltiples versiones de archivos.

Guía de Git Maestro del árbol de Git

Por ejemplo, si está escribiendo un script en Git y le hizo un par de cambios. Git solo almacenará el hash de los dos primeros cambios y comparará el archivo actual con los dos primeros. De esa forma, Git puede reconstruir las versiones anteriores sin almacenar varias copias del mismo archivo.

Guía de Git Dif Información

Este enfoque también le permite escalar fácilmente sus archivos y directorios a un proyecto más grande. Dado que Git almacena todos los datos históricos como hashes, solo necesita operar en su máquina local. Como tal, puede exportar fácilmente su trabajo a otras personas e importar sus contribuciones sin necesidad de un software de gestión externo.

Instalando Git

Git es un paquete muy común en los sistemas operativos basados ​​en Linux. Por eso, instalarlo es increíblemente fácil. En la mayoría de los casos, ya está preinstalado en su sistema. Si está usando Debian o Ubuntu, puede usar apt para instalar Git:

Guía de Git Instalación de Git

Para Fedora o RHEL, use dnf:

Mientras tanto, si está usando Arch Linux, también puede instalar Git usando pacman:

Uso de Git para un proyecto local

Usar Git en tu máquina local es muy simple. Lo primero que debe hacer es crear un nuevo repositorio de Git. Su propósito principal es servir como contenedor para todos los objetos de Git que agregará para este proyecto.

En la carpeta que desea rastrear, ejecute los siguientes comandos:

Git Guía Git Init

Una vez hecho esto, Git creará una carpeta «.git» en la raíz del directorio de su proyecto. Esto servirá como marcador para el programa Git y como carpeta de almacenamiento para todos los objetos Git para ese proyecto.

Agregar archivos existentes a su repositorio

Con un repositorio de Git en funcionamiento, lo siguiente que debe hacer es importar cualquier archivo existente a Git. Esto se debe a que Git no rastrea ningún archivo cuando crea un nuevo repositorio por primera vez.

Para hacerlo, puede ejecutar el siguiente comando en el directorio raíz de su carpeta:

Este comando le indicará a Git que incluya todos los archivos y carpetas en el directorio actual. Luego puede confirmar esto ejecutando el siguiente comando:

Guía de Git Nuevo Git Ls

Comprometer su primer repositorio

Con sus archivos ahora en el repositorio, lo siguiente que debe hacer es escribir esos cambios en el sistema de archivos Git. Esto asegura que etiquetará y codificará correctamente todos los archivos nuevos en su carpeta. Para hacer esto, deberá «confirmar» el estado actual del repositorio.

Para hacer eso, puede ejecutar el siguiente comando:

Esto le indicará a Git que escriba todo lo que tiene en su caché en el sistema de archivos virtual.

A partir de ahí, Git te pedirá una descripción sobre este compromiso específico. Esto le permitirá proporcionar una breve explicación de lo que contiene, así como una forma de distinguir fácilmente este compromiso de los demás. En mi caso, dado que este es mi primer compromiso, simplemente escribiré «Commit inicial».

Primera confirmación de Git Guide

Con eso, ahora puede verificar si Git reconoce todos los archivos en su directorio ejecutando el siguiente comando:

Guía de Git Nuevo Git Ls

Si durante lo anterior, Git arroja un error diciendo que no puede reconocerte, tendrás que decirle quién eres. Hacer eso es tan simple como ingresar:

Operaciones básicas de archivos en Git

En su mayor parte, los comandos de UNIX funcionarán con Git. Esto significa que puedes usar ls, cp, mv y rm en todos los archivos y carpetas dentro de un repositorio de Git. Sin embargo, hay una serie de comandos específicos que puede usar para manipular fácilmente los objetos de Git.

Por ejemplo, puede utilizar el subcomando ls-tree para ver el contenido de un árbol Git específico, así como el valor hash actual de cada archivo.

Guía Git Nuevo Ls Tree Master

Otro comando que puedes usar es la versión Git de mv. Esto le permite mover archivos a cualquier lugar dentro del repositorio y aún así conservar su historial.

Esto puede ser útil si desea cambiar el nombre de un archivo en el control de versiones, pero también desea tener la capacidad de revertir ese cambio a través de Git.

Sabiendo eso, puede ejecutar el siguiente comando para cambiar el nombre de un archivo sin perder su historial.

Git Guía Git Mv

Por último, Git también proporciona un subcomando para eliminar objetos. Similar a mvpuede usar una versión Git de rm para eliminar un archivo en su repositorio actual. Hacerlo de esta manera le permite eliminar limpiamente el objeto actual para ese archivo en particular.

Git Guía Git Rm

Clonación de un repositorio remoto

También es posible importar un repositorio remoto a su máquina local. Esto es útil cuando necesita copiar un proyecto diferente a través de la red. Git le brinda la capacidad de clonar un repositorio ya existente.

La forma en que funciona la clonación es que Git copia completamente el árbol de un proyecto remoto. Esto le permite recrear la historia completa de un repositorio tal como existe en ese momento específico.

Repositorio de clonación de Git Guide

También es posible clonar repositorios que solo existen en una red local. Esto es útil si está colaborando con otras personas a través de LAN. Además, el proceso de clonación de un proyecto en una red local es exactamente el mismo:

Uso de Git para proyectos en línea

Con eso, otra forma de colaborar con otras personas es a través del alojamiento de terceros. En esto, está utilizando un servicio remoto como Github para alojar su proyecto en Internet. Esto puede ser increíblemente útil si necesita una forma rápida y fácil de distribuir su trabajo a una gran audiencia.

Guía de Git Sitio web de Github

No solo eso, un servicio como Github también agiliza el proceso de creación y mantenimiento de un repositorio. Como tal, es un servicio poderoso si tiene la intención de realizar proyectos colaborativos con otras personas a través de redes remotas.

Creación de su primer repositorio en línea

Sabiendo eso, iniciar un repositorio a través de Github es increíblemente fácil. Una vez que haya iniciado sesión en su cuenta, el sitio lo redirigirá a su página de destino personal.

Esta página mostrará las últimas actualizaciones sobre los proyectos que está siguiendo actualmente. Eso incluye una breve historia de todas sus contribuciones a otros proyectos.

Guía de Git Página de inicio de Github

Desde aquí, debe hacer clic en el signo «+» al lado de su foto de perfil. Aparecerá un pequeño menú desplegable donde puede elegir una serie de acciones para su cuenta. Luego, debe hacer clic en el enlace «Nuevo repositorio» de ese menú.

Git Guide Github Nuevo repositorio

Aquí es donde puede especificar los detalles del proyecto que desea realizar en línea. A partir de ahí, debe configurar una serie de opciones para ajustar su proyecto.

Git Guide Nueva página de repositorio

Primero, debe proporcionar un nombre de repositorio para su proyecto. Esto servirá como un nombre donde otras personas pueden buscar cuando busquen su repositorio.

Nombre del repositorio de Git Guide

A continuación, debe establecer la configuración de privacidad para su proyecto. Puede elegir entre Público y Privado. Un repositorio público permite que otras personas busquen su proyecto en línea, mientras que uno privado le permite compartirlo solo con unas pocas personas.

Git Guide Repo Privacidad

Por último, debe hacer clic en el botón «Crear repositorio» para finalizar su nuevo proyecto.

Vinculando Github a tu máquina local

Con eso, lo siguiente que debe hacer es vincular su máquina local a su cuenta de Github. Para hacer esto, necesitas hacer dos cosas:

  • Primero, debe crear una clave SSH para su máquina. Esta es una clave criptográfica corta que puede generar localmente en su computadora.
  • Por último, debe decirle a Github su clave SSH actual. Esto permite que su máquina tenga una identidad fija para Github. A su vez, utiliza esta identidad para verificarte cada vez que actualizas tu repositorio.

Crear su clave SSH

Si está usando Debian o Ubuntu, puede instalar SSH usando apt:

Guía de Git Instalación de Ssh

Desde allí, puede ejecutar el ssh-keygen programa para crear la clave ssh:

Vinculación de su clave SSH

Vuelva a su panel de control de Github, haga clic en su imagen de perfil y luego en Configuración.

Guía de Git Configuración de la cuenta de Github

Esto mostrará la configuración general de su cuenta de Github. Desde aquí, debe hacer clic en el enlace «Claves SSH y GPG» en la sección «Acceso» en la barra lateral izquierda de la página.

Guía de Git Clave Ssh de la cuenta de Github

Haga clic en el botón «Nueva clave SSH» junto al encabezado «Claves SSH». Esto luego cargará la página de configuración de clave donde puede copiar el contenido de su nueva clave SSH.

Git Guide Nueva página de clave Ssh

Abra su archivo de claves (en mi caso, desde allí, archivo de claves id_ed25519.pub en el directorio «~/.ssh») en un editor de texto. Copie el contenido y péguelo en Github.

Envío de confirmaciones locales en línea

El último paso es que cargues los contenidos de tu proyecto local en línea.

En su máquina local, vaya a la carpeta Git y ejecute el comando:

Guía de Git Agregar nuevo origen remoto

Desde aquí, debe asegurarse de que su proyecto local se encuentre actualmente en su rama maestra. Esto es para que Git copie la versión adecuada de tu proyecto. Con eso, puede asegurarse de que ejecute el siguiente comando:

Por último, inserte el estado actual del proyecto en línea:

Git Guide Push Local Repo Online

¡Felicidades! Ahora tiene una configuración de trabajo básica para proyectos de Git. No solo eso, ahora también tiene una idea básica de cómo funciona Git y cómo puede hacer que funcione para usted.

Preguntas frecuentes

¿Es posible obtener los cambios que otras personas han realizado en mi proyecto Git en línea?

¡Sí! Es posible copiar los cambios que otras personas han realizado en su repositorio en línea. Puede hacer esto tirando de su origen remoto.

Puede obtener fácilmente cualquier actualización ejecutando el siguiente comando: git pull origin main

¿Cuáles son algunos de los problemas que debo tener en cuenta al usar Git?

Uno de los mayores problemas de usar Git es que ocupa mucho espacio al almacenar archivos binarios. Eso incluye cualquier archivo que no esté codificado en texto sin formato, como imágenes, formatos de documentos de Office y programas compilados.

Esto se debe principalmente a que los algoritmos de compresión y hash que usa Git para almacenar objetos favorecen en gran medida los archivos de texto sin formato. Es posible incluir binarios bajo el control de versiones, sin embargo, es una buena práctica evitar usarlos con Git.

¿Es posible no incluir archivos en un árbol Git?

¡Sí! Puede excluir fácilmente archivos de una confirmación. Puede usar un archivo «.gitignore» para decirle a Git que no desea incluir ciertos archivos.

Este es un archivo de texto oculto que creas en la carpeta raíz de tu repositorio. En esto, incluye las rutas relativas de archivos y directorios que desea que Git ignore.

Credito de imagen: Unsplash

¿Es útil este artículo?

¡Suscríbete a nuestro boletín!

Nuestros últimos tutoriales enviados directamente a su bandeja de entrada

ramitas rojas
ramitas rojas

Ramces es un escritor de tecnología que vivió con computadoras toda su vida. Lector prolífico y estudiante de Antropología, es un personaje excéntrico que escribe artículos sobre Linux y cualquier cosa *nix.

¡Ayúdanos a difundirlo!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *