¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Fundamentos de Git 2: ramas y fusiones

Aquí está la lección completa para leer. Crea una cuenta gratuita para practicarla en un laboratorio en vivo.

Laboratorio de contenedores11 min de lectura14 comandos

Qué vas a hacer

Una rama (branch) es una línea de trabajo aparte dentro del mismo repositorio. Haces un cambio en tu propia rama, así que la principal se queda como estaba, y después lo fusionas (merge) con la principal cuando estés conforme. Los equipos hacen esto con cada cambio. Tú lo harás una vez, con el repositorio hello-git que el Gitea de este laboratorio ya tiene.

Antes de empezar

Nota

Pulsa Iniciar el laboratorio en la barra de la parte superior de esta lección y espera hasta que diga que está en marcha. Gitea se abre desde el enlace Gitea de la barra. Cada botón Ejecutar de abajo escribe su comando en el terminal de tu laboratorio, uno detrás de otro y en la misma sesión. Para verlos, o para escribir los tuyos, pulsa Abrir el terminal (pestaña nueva) en la barra.

1. Dile a Git quién eres y descarga el repositorio

Git necesita tu nombre para cada commit. Después git clone copia hello-git desde Gitea a una carpeta nueva con el mismo nombre, dentro de tu carpeta personal, ~, y cd entra en ella. Ya tiene dos archivos y dos commits. El ~/ importa si hiciste antes Fundamentos de Git: sin él, la copia caería dentro de la carpeta de esa lección.

Comando
git config --global user.name "Student"

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

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

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
git clone http://student:student@gitea:3000/student/hello-git.git ~/hello-git

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
cd ~/hello-git

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

2. Empieza tu propia rama

git switch -c my-change crea una rama nueva llamada my-change y te pasa a ella. A partir de ahora los commits van a esta rama y main no se mueve.

Comando
git switch -c my-change

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

3. Haz un cambio y guárdalo con un commit

Añade tu línea a la lista de visitantes, y después prepárala y haz el commit: son los mismos tres pasos de Fundamentos de Git. git log --oneline muestra tu commit encima de los dos que ya había.

Comando
echo "Your Name" >> visitors.txt

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
git add visitors.txt

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
git commit -m "Add my name to the visitors list"

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
git --no-pager log --oneline

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

4. Sube la rama

La rama solo existe en tu ordenador hasta que la subes. -u origin my-change la envía a Gitea y recuerda adónde va. git branch -a lista ahora las ramas de los dos lados. Gitea también escribe un enlace para crear una pull request (solicitud de fusión). Empieza con http://localhost, que tu navegador no puede abrir, así que usa el enlace Gitea de la barra, en el paso siguiente.

Comando
git push -u origin my-change

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
git --no-pager branch -a

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

5. Fusiónala en Gitea

Pulsa el enlace Gitea de la barra del laboratorio e inicia sesión como student con la contraseña student. Abre student/hello-git y pulsa Pull Requests, y después New Pull Request. Elige fusionar my-change en main, pulsa Create Pull Request y luego Merge. Una pull request es la forma en que un equipo pide fusionar una rama, y permite que otra persona la lea antes.

6. Trae la fusión a tu ordenador

Tu ordenador todavía no sabe nada de la fusión. Vuelve a main y ejecuta git pull para descargarla. git log --oneline muestra ahora tu commit y la fusión.

Comando
git switch main

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
git pull

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
git --no-pager log --oneline

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Para el profesorado

Consejo

Esta lección es un ejemplo pequeño de una lección practicada en un laboratorio: los pasos y los botones Ejecutar son la lección, y el laboratorio es la copia de cada alumno. Esta lección usa el mismo laboratorio de Gitea que Fundamentos de Git, así que cada alumno conserva un terminal y un historial en las dos lecciones. Un laboratorio puede servir para tantas lecciones como quiera. Cópiela en su propio módulo y cámbiela, o cree una desde cero con el menú Laboratorio del editor de lecciones.

Más en este laboratorio

Sobre este laboratorio y su código: Laboratorio de Git y Gitea: aprende clone, commit y push en un servidor Git propio

¿Enseñas a una clase? Asigna estas lecciones a tus estudiantes con calificación y un laboratorio para cada uno.