Desafío 1: Crea un nuevo repositorio local. Creé 2 carpetas físicas en Datos (D:) PC. Creé 2 carpetas y ejecuté git clone en cada una. Ahora, dentro de Oficina_A hay una carpeta llamada PracticaConflictos con el archivo README.md. B. Adentro de Oficina_B hay lo mismo que la carpeta Oficina_A
Desafío 2: Conecté esa carpeta con el internet de GitHub (Añadió el remoto) (En la web): En GitHub: Creé el repositorio remoto PracticaConflictos con su archivo README.md de texto.
Desafío 3: Realiza un cambio en el repositorio local y envíalo al remoto.
- Abrí el archivo desde VS Code
- Busqué en el disco D: la carpeta Oficina_A, dentro seleccione la carpeta PracticaConflictos .
- Se ve el archivo README.md, hago click.
- Cambio deseado: En la hoja en blanco del README escribí una oración simple "Este es el primer cambio hecho por la Oficina A".
- Guardé el archivo presionando las teclas Ctrl + S
- Click a la izquierda en el ícono de Source Control:
- Donde dice Message, escribí el texto del commit:
Cambio en el repositorio local - Click en el botón Commit, eso equivale a hacer de forma limpia y automática:
a. git add .
b. git commit -m - Enviar los cambios al remoto: Una vez hecho el commit se realiza Click en Sync Changes (Sincronizar cambios)
a. git pull ( descarga los cambios que puedan existir en GitHub para asegurarse de que tu computadora está actualizada).
b. git push (sube los commits locales hacia el servidor en internet).
- Abrí la Oficina_B en VS Code e hice lo mismo que en Oficina_A hasta el punto 8
- Provocar el conflicto. La Oficina_A subió su cambio a GitHub. La Oficina_B intenta modificar la misma línea y trata de subirla forzando el choque de versiones.
a. git add .
b. git commit -m - Abrí el disco D:\Oficina_B\PracticaConflictos. Accedí al terminal.
a. git log en Oficina_A, y Oficina_B, se ven los commits
b. git push origin main en Oficina_A, y Oficina_B, al intentar subir los cambios se ve el conflicto en Oficina_B. El servidor de GitHub rechazó el comando arrojando el error [rejected] (fetch first), debido a que el repositorio remoto contiene trabajo que no está en el local.
Desafío 4: Resuelve los conflictos manualmente, eligiendo qué cambios se mantendrán.
- En la terminal de la Oficina_B, ejecuté git pull origin main para descargar los cambios del repositorio remoto.
- Resultado: Git detectó que la Oficina_A y la Oficina_B modificaron la misma línea del archivo README.md. El sistema arrojó el mensaje de error: CONFLICT (content): Merge conflict in README.md, deteniendo la fusión automática (Automatic merge failed)
- Utilicé VS Code Merge Editor: Abrí la carpeta de la Oficina_B (PracticaConflictos). Usé el archivo README.md y lo abrí con VS Code.
- Click sobre el archivo README.md Al abrir la hoja en el centro, el texto se mostrará dividido con las líneas de colores del conflicto. Click en el botón que dice Resolve in Merge Editor. La pantalla se divida en los tres paneles (Current, Incoming y Result)
a. Elegir si queda el cambio A o el B
b. Para la Oficina B, click en Accept Current (Aceptar actual). Para la Oficina A, click en Accept Incoming (Aceptar entrante).
c. Click en el botón Complete Merge (Completar fusión)



Desafío 5 Realiza un commit para registrar la resolución del conflicto. (Completados por la interfaz) Al presionar “Continue” en Source Control el commit de cierrese generó automaticamente. (Conflict resolved)
Desafio 6 Verifica qué archivos fueron añadidos.(Completados por la interfaz) verificó los archivos añadidos, dejando el entorno local unificado.
Desafío 7: Sincroniza el repositorio local con el remoto en GitHub: Click en el botón Sync Changes desde el Source Control de VS Code para ejecutar la secuencia automática de git pull y git push.