Saltar a contenido

Entendiendo Git

Comandos Básicos

mmd

1. Git Clone

¿Qué es?

El comando git clone se utiliza para crear una copia local de un repositorio remoto.

Sintaxis

git clone [URL del repositorio]

Ejemplo

git clone https://github.com/usuario/repo.git

Resultado

  • Crea una carpeta con el nombre del repositorio y descarga todos los archivos y el historial de commits.

2. Git Checkout

¿Qué es?

El comando git checkout se usa para cambiar de rama o restaurar archivos.

Sintaxis

git checkout [nombre-de-la-rama]

Creando una nueva rama

Para crear y cambiar a una nueva rama al mismo tiempo, usa:

git checkout -b [nombre-de-la-nueva-rama]

Ejemplo

git checkout -b nueva-funcionalidad

3. Git Pull

¿Qué es?

El comando git pull se utiliza para actualizar tu repositorio local con los cambios del repositorio remoto.

Sintaxis

git pull

Ejemplo

git pull origin main

Resultado

  • Descarga y fusiona los cambios del repositorio remoto en la rama actual.

4. Git Add

¿Qué es?

El comando git add se usa para agregar cambios al índice (área de staging) antes de un commit.

Sintaxis

  • Para agregar todos los archivos:
    git add .
    
  • Para agregar archivos específicos:
    git add [nombre-del-archivo]
    

Ejemplo

git add archivo1.txt

5. Git Commit

¿Qué es?

El comando git commit se utiliza para guardar los cambios en el repositorio local.

Sintaxis

git commit

Variaciones

  • Para agregar todos los cambios y hacer el commit:
    git commit -a
    
  • Para hacer un commit con un mensaje:
    git commit -m "Mensaje del commit"
    

Ejemplo

git commit -m "Agrega nueva funcionalidad"

6. Usando Vim para el Commit

¿Qué es?

Si usas solo git commit, se abrirá el editor Vim para que edites el mensaje del commit.

Cómo usar Vim

  1. Entrar en modo de edición:
  2. Presiona i para entrar en modo de inserción.
  3. Guardar y salir:
  4. Presiona Esc, escribe :x y presiona Enter.

Consejo

  • Usar -m evita que se abra Vim y te permite escribir el mensaje directamente.

7. Git Merge

¿Qué es?

El comando git merge se usa para combinar cambios de diferentes ramas.

Sintaxis

git merge [nombre-de-la-rama]

Ejemplo

  1. Cambia a la rama donde deseas fusionar los cambios:
    git checkout main
    
  2. Ejecuta el merge:
    git merge nueva-funcionalidad
    

Resultado

  • Los cambios de la rama especificada se fusionarán en la rama actual.

8. Git Reset

¿Qué es?

El comando git reset se utiliza para deshacer cambios en el área de staging y, opcionalmente, en los commits.

Variaciones

  • git reset: Elimina los cambios del área de staging, pero mantiene los cambios en tu copia local.

Uso:

git reset
  • git reset --soft [commit]: Mueve el HEAD al commit especificado y mantiene los cambios en el área de staging, permitiéndote hacer un nuevo commit.

Uso:

git reset --soft HEAD~1
  • git reset --hard [commit]: Mueve el HEAD y descarta todos los cambios en el área de staging y en el directorio de trabajo (working directory), eliminando permanentemente los cambios no confirmados.

Uso:

git reset --hard HEAD~1

9. ¿Qué es el HEAD en Git?

El HEAD es un puntero especial en Git que apunta al commit más reciente en la rama actual en la que estás trabajando. En otras palabras, representa el estado más reciente de tu repositorio local en la rama activa.

Funciones del HEAD

  1. Identificación de la Rama Activa: El HEAD indica qué rama estás utilizando actualmente. Cuando haces un checkout a una nueva rama, el HEAD se actualiza para apuntar al último commit de esa nueva rama.

  2. Registro del Último Commit: El HEAD apunta al último commit en la rama activa, permitiéndote realizar operaciones como git commit, git merge y git reset basadas en el estado actual.

  3. Referencia para Navegación: El HEAD también se puede usar para navegar entre commits. Por ejemplo, puedes referenciar el commit anterior usando HEAD~1, o el commit más reciente en una rama diferente.

Importancia del HEAD

El HEAD es fundamental para el funcionamiento de Git, ya que ayuda a mantener el control del flujo de trabajo y de los cambios en el repositorio. Entender cómo opera el HEAD es esencial para manipular ramas y commits de forma eficaz.

10. Resumen de Comandos

| Comando | Descripción | |