Reto 2: Simulador de Trabajo en Equipo

Ejercicio práctico

Este es un escenario clásico en el trabajo diario. Dos personas editaron la misma línea del mismo archivo y Git no sabe con cuál quedarse. Aprenderás a resolverlo sin miedo.

Desarrolladores trabajando en un conflicto de Git
Desarrolladores enfrentando un conflicto de fusión en Git

El Escenario (Simulado)

No necesitas estar conectado con un amigo real para simular un conflicto, puedes hacerlo tú mismo usando ramas (las ramas son copias paralelas de tu código, un concepto más avanzado que verás a fondo en el futuro, pero aquí te guiaremos).

Tus Tareas Paso a Paso

  1. En un repositorio nuevo, crea un archivo llamado index.html y escribe la línea <h1>Bienvenido a mi web</h1>. Haz un commit inicial.
  2. Crea una nueva rama paralela y muévete a ella usando el comando: git checkout -b rama-alternativa.
  3. En esa rama, edita tu archivo y cambia la línea a <h1>Web de Noticias</h1>. Haz un commit con este cambio.
  4. Vuelve a tu rama principal usando: git checkout main (o master si es tu caso). Notarás que el archivo vuelve a su estado original (¡es la magia de Git!).
  5. Ahora en esta rama principal, edita la misma línea y pon: <h1>Bienvenido a mi Blog</h1>. Haz un commit de este cambio.
  6. El momento de la verdad: Intenta fusionar la rama alternativa a tu rama principal tecleando git merge rama-alternativa.
Diagrama del proceso de fusión de ramas en Git con conflicto
Proceso de fusión de ramas en Git y resolución de conflictos

Resolviendo la catástrofe

Git te avisará de un Merge Conflict. Si abres tu index.html, verás los infames marcadores de conflicto (<<<<<<< HEAD, =======, >>>>>>>).

Diagrama del proceso de resolución de conflictos en Git
Resolución de conflictos en Git

Tu tarea final es borrar esos marcadores, decidir qué título quieres que quede finalmente, guardar el archivo y hacer un último git add . seguido de git commit -m "fix: resuelve conflicto de títulos". ¡Felicidades, eres oficialmente un desarrollador que no le teme a los conflictos!

Inicia sesión e inscríbete para guardar tu progreso.