Git Desktop - Haciendo merge
Escenario: Hay un proyecto en GitHub llamado kal, este proyecto tiene varias ramas, una de ellas llamada ingresos. Los usuarios tienen el proyecto clonado en sus PCs, hay un usuario que realizo cambios importantes, hizo commit, realizo el PR. Al intentantar hacer el merge muestra conflicto en los archivos.
Para solucionar vamos a pasar los cambios de la rama ingresos hacia el main usando Git Bash en local.
Suponiendo que ya existe el repo kal clonado en la PC.
Abrir el proyecto desde una terminal, power shell o Git Bash.
Ir a la rama main con el comando: git checkout main
tukul@HUAWEI /D/proyectos/2025/kal (ingresos)
$ git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.
tukul@HUAWEI /D/proyectos/2025/kal (main)
$
Previsualiza qué entrará al merge:
git log --oneline --graph --decorate origin/main..origin/ingresos
tukul@HUAWEI /D/proyectos/2025/kal (main)
$ git log --oneline --graph --decorate origin/main..origin/ingresos
* d0fc293 (origin/ingresos, ingresos) Se actualiza modelo del HomeController
* 6338acb Se actualiza rama ingresos, revisado y autorizado AR
OPCIONES para hacer merge:
1- git merge ingresos
2- git merge origin/ingresos
tukul@HUAWEI /D/proyectos/2025/kal (main)
$ git merge ingresos
Auto-merging app/Http/Controllers/ComController.php
Auto-merging app/Http/Controllers/DigitalController.php
CONFLICT (content): Merge conflict in app/Http/Controllers/DigitalController.php
Auto-merging resources/views/comercial/secciones/detalles_terminos.blade.php
Auto-merging resources/views/layouts/master.blade.php
Automatic merge failed; fix conflicts and then commit the result.
tukul@HUAWEI /D/proyectos/2025/kal (main|MERGING)
Conflictos:
Esta es la razon por la que hemos realizado esta entrada para resolver el conflicto en local.
En Git Desktop nos mostrara una alerta y debemos elegir que cambio se queda: el actual, el entrante o ambos.
Una vez resuelto el conflicto podemos hacer un push del main.