En este tema, aprenderás cómo crear y cambiar entre ramas en Git. Las ramas son una característica fundamental de Git que te permite trabajar en diferentes versiones de tu proyecto de manera simultánea. Esto es especialmente útil para desarrollar nuevas características, corregir errores o experimentar sin afectar la rama principal del proyecto.

¿Qué es una Rama?

Una rama en Git es simplemente un puntero móvil a una de las confirmaciones (commits). La rama principal en la mayoría de los repositorios se llama main o master. Cuando creas una nueva rama, Git crea un nuevo puntero que puedes mover independientemente del puntero main.

Creando una Nueva Rama

Para crear una nueva rama, utilizamos el comando git branch seguido del nombre de la nueva rama. Aquí hay un ejemplo:

git branch nueva-rama

Este comando crea una nueva rama llamada nueva-rama, pero no cambia a esa rama automáticamente. Para cambiar a la nueva rama, utilizamos el comando git checkout.

Cambiando a una Rama

Para cambiar a una rama existente, utilizamos el comando git checkout seguido del nombre de la rama. Aquí hay un ejemplo:

git checkout nueva-rama

Ahora, cualquier cambio que hagas se registrará en la rama nueva-rama.

Combinando Creación y Cambio de Rama

Git también proporciona un comando que combina la creación de una nueva rama y el cambio a esa rama en un solo paso. Este comando es git checkout -b:

git checkout -b nueva-rama

Este comando crea una nueva rama llamada nueva-rama y cambia a esa rama inmediatamente.

Visualizando Ramas

Para ver todas las ramas en tu repositorio, puedes usar el comando git branch sin argumentos:

git branch

Este comando lista todas las ramas y marca la rama actual con un asterisco (*).

Ejemplo Práctico

Vamos a ver un ejemplo práctico de cómo crear y cambiar ramas en Git.

  1. Crear un nuevo repositorio:

    git init mi-proyecto
    cd mi-proyecto
    
  2. Crear un archivo y hacer una confirmación inicial:

    echo "Hola Mundo" > archivo.txt
    git add archivo.txt
    git commit -m "Confirmación inicial"
    
  3. Crear y cambiar a una nueva rama:

    git checkout -b nueva-caracteristica
    
  4. Hacer cambios en la nueva rama:

    echo "Nueva característica" >> archivo.txt
    git add archivo.txt
    git commit -m "Añadir nueva característica"
    
  5. Cambiar de vuelta a la rama principal:

    git checkout main
    
  6. Verificar el contenido del archivo en la rama principal:

    cat archivo.txt
    

    Deberías ver solo "Hola Mundo" porque los cambios en nueva-caracteristica no están en main.

Ejercicio Práctico

Ejercicio 1: Creación y Cambio de Ramas

  1. Crea un nuevo repositorio de Git.

  2. Haz una confirmación inicial con un archivo llamado index.html que contenga <h1>Hola Mundo</h1>.

  3. Crea una nueva rama llamada estilos.

  4. Cambia a la rama estilos y añade un archivo styles.css con el siguiente contenido:

    body {
        background-color: lightblue;
    }
    
  5. Haz una confirmación en la rama estilos.

  6. Cambia de vuelta a la rama main y verifica que el archivo styles.css no está presente.

Solución

  1. Crear un nuevo repositorio:

    git init mi-sitio-web
    cd mi-sitio-web
    
  2. Hacer una confirmación inicial:

    echo "<h1>Hola Mundo</h1>" > index.html
    git add index.html
    git commit -m "Confirmación inicial"
    
  3. Crear y cambiar a una nueva rama:

    git checkout -b estilos
    
  4. Añadir styles.css y hacer una confirmación:

    echo "body { background-color: lightblue; }" > styles.css
    git add styles.css
    git commit -m "Añadir estilos CSS"
    
  5. Cambiar de vuelta a la rama main:

    git checkout main
    
  6. Verificar que styles.css no está presente:

    ls
    

    Deberías ver solo index.html.

Conclusión

En esta sección, aprendiste cómo crear y cambiar entre ramas en Git. Las ramas te permiten trabajar en diferentes versiones de tu proyecto de manera simultánea, lo que es esencial para el desarrollo colaborativo y la gestión de características. En el próximo tema, aprenderás cómo fusionar ramas para integrar cambios de diferentes ramas en una sola.

Dominando Git: De Principiante a Avanzado

Módulo 1: Introducción a Git

Módulo 2: Operaciones Básicas de Git

Módulo 3: Ramas y Fusión

Módulo 4: Trabajando con Repositorios Remotos

Módulo 5: Operaciones Avanzadas de Git

Módulo 6: Herramientas y Técnicas de Git

Módulo 7: Estrategias de Colaboración y Flujo de Trabajo

Módulo 8: Mejores Prácticas y Consejos de Git

Módulo 9: Solución de Problemas y Depuración

Módulo 10: Git en el Mundo Real

© Copyright 2024. Todos los derechos reservados