Comandos de GIT que todo desarrollador debería saber

Comandos de GIT
¿Problemas de visión? En Tecsify nos importa la inclusión de personas con discapacidad, por eso, ahora puedes esuchar los articulos narrados en tiempo real

GIT es un sistema de control de versiones, es decir; un sistema que registra los cambios en un archivo o conjunto de archivos a lo largo del tiempo, esto con el fin de que más adelante no sea un problema obtener versiones anteriores especificas del archivo.

Un proyecto GIT consta de tres secciones principales: el directorio de trabajo, el área de preparación y el directorio git.

Desde su lanzamiento en 2005, Git ha crecido enormemente en popularidad. Hoy en día, es el sistema de control de versiones más utilizado en el mundo, con plataformas como GitHub y GitLab que lo han popularizado aún más.

Existe una gran variedad de comandos que puedes utilizar, dominar GIT requiere tiempo, pero ¡No te preocupes! algunos comandos se utilizan más frecuentemente (algunos hasta a diario varias veces) pero con este articulo aprenderás cuales son los más comunes y como deberías usarlo en tu día a día como desarrollador de software.

Sin más que agregar ¡Vamos a los comandos!

También podría interesarte: 30 comandos básicos de Linux que todo usuario debe saber

Comandos básicos de GIT:

GIT INIT: creará un nuevo repositorio local GIT. El siguiente comando de Git creará un repositorio en el directorio actual:

git init

Como alternativa, puedes crear un repositorio dentro de un nuevo directorio especificando el nombre del proyecto:

git init [nombre del proyecto]

GIT CLONE: se usa para copiar un repositorio. Si el repositorio está en un servidor remoto, usa:

git clone nombredeusuario@host:/path/to/repository

A la inversa, ejecuta el siguiente comando básico para copiar un repositorio local:

git clone /path/to/repository

GIT ADD: se usa para agregar archivos al área de preparación. Por ejemplo, el siguiente comando de Git básico indexará el archivo tecsify.txt:

git add <tecsify.txt>

GIT COMMIT: creará una instantánea de los cambios y la guardará en el directorio git.

git commit –m “El mensaje que acompaña al commit va aquí”

Debes tener en cuenta que los cambios confirmados no llegarán al repositorio remoto.


GIT CONFIG: puede ser usado para establecer una configuración específica de usuario, como el email, nombre de usuario y tipo de formato, etc. Por ejemplo, el siguiente comando se usa para establecer un email:

git config --global user.email [email protected]

La opción -global le dice a GIT que vas a usar ese correo electrónico para todos los repositorios locales. Si quieres utilizar diferentes correos electrónicos para diferentes repositorios, usa el siguiente comando:

git config --local user.email [email protected]

GIT STATUS: muestra la lista de los archivos que se han cambiado junto con los archivos que están por ser preparados o confirmados.

git status

GIT PUSH: se usa para enviar confirmaciones locales a la rama maestra del repositorio remoto. Aquí está la estructura básica del código:

git push  origin <master>

Reemplaza <master> con la rama en la que quieres enviar los cambios cuando no quieras enviarlos a la rama maestra.


GIT CHECKOUT: crea ramas y te ayuda a navegar entre ellas. Por ejemplo, el siguiente comando crea una nueva y automáticamente se cambia a ella:

command git checkout -b <branch-name>

Para cambiar de una rama a otra, sólo usa:

git checkout <branch-name>

GIT REMOTE: te permite ver todos los repositorios remotos. El siguiente comando listará todas las conexiones junto con sus URLs:

git remote -v

Para conectar el repositorio local a un servidor remoto, usa este comando:

git remote add origin <host-or-remoteURL>

Por otro lado, el siguiente comando borrará una conexión a un repositorio remoto especificado:

git remote <nombre-del-repositorio>

GIT BRANCH: se usa para listar, crear o borrar ramas. Por ejemplo, si quieres listar todas las ramas presentes en el repositorio, el comando debería verse así:

git branch

Si quieres borrar una rama, usa:

 git branch -d <branch-name>

GIT PULL: fusiona todos los cambios que se han hecho en el repositorio remoto con el directorio de trabajo local.

git pull

GIT MERGE: se usa para fusionar una rama con otra rama activa:

git merge <branch-name>

GIT DIFF: se usa para hacer una lista de conflictos. Para poder ver conflictos con respecto al archivo base, usa:

git diff --base <file-name>

El siguiente comando se usa para ver los conflictos que hay entre ramas antes de fusionarlas:

git diff <source-branch> <target-branch>

Para ver una lista de todos los conflictos presentes usa:

git diff

GIT TAG: marca commits específicos. Los desarrolladores lo usan para marcar puntos de lanzamiento como v1.0 y v2.0.

git tag 1.1.0 <instert-commitID-here>

GIT LOG: se usa para ver el historial del repositorio listando ciertos detalles de la confirmación. Al ejecutar el comando se obtiene una salida como ésta:

commit 15f4b6c44b3c8344caasdac9e4be13246e21sadw
Author: Oscar Morales <[email protected]>
Date:   Fri Oct 7 12:56:29 2022 -0600

GIT RESET: sirve para resetear el index y el directorio de trabajo al último estado de confirmación.

git reset - -hard HEAD

GIT RM: se puede usar para remover archivos del index y del directorio de trabajo.

git rm tecsify.txt

GIT STASH: guardará momentáneamente los cambios que no están listos para ser confirmados. De esta manera, pudes volver al proyecto más tarde.

git stash

GIT SHOW: se usa para mostrar información sobre cualquier objeto git.

git show

GIT FETCH: le permite al usuario buscar todos los objetos de un repositorio remoto que actualmente no se encuentran en el directorio de trabajo local.

git fetch origin

GIT GREP: le permite al usuario buscar frases y palabras específicas en los árboles de confirmación, el directorio de trabajo y en el área de preparación

git grep “www.tecsify.com”

GITK: muestra la interfaz gráfica para un repositorio local. Simplemente ejecuta:

gitk

GIT INSTAWEB: te permite explorar tu repositorio local en la interfaz GitWeb. Por ejemplo:

git instaweb –http=webrick

GIT GC: limpiará archivos innecesarios y optimizará el repositorio local.

git gc

GIT ARCHIVE: le permite al usuario crear archivos zip o tar que contengan los constituyentes de un solo árbol de repositorio. Por ejemplo:

git archive - -format=tar master

GIT PRUNE: elimina los objetos que no tengan ningún apuntador entrante.

git prune

GIT FSCK: realiza una comprobación de integridad del sistema de archivos git e identifica cualquier objeto corrupto

git fsck

GIT REBASE: se usa para aplicar ciertos cambios de una rama en otra. Por ejemplo:

git rebase master
Comandos_De_Git
Puedes ver la infografía en nuestra sección de infografías
Oscar Morales Cuellar
Oscar Morales Cuellar es un Software Engineer, estratega de innovación tecnológica y conferencista internacional. Como CEO de Tecsify Latinoamérica, ha llevado la democratización de la tecnología, educación e innovación a más de 10 países, obteniendo múltiples reconocimientos internacionales y convirtiéndose en un referente global en empoderamiento y desarrollo tecnológico.