Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Git: hacer un merge a master sobrescribiendo archivos si es necesario

Imago voragine.net

Una manera rápida de hacer un merge a la rama master de un repositorio git resolviendo los conflictos automáticamente. Con el siguiente método lo único que hay que decidir es si prevalece la rama que se fusiona o la rama master. Para ello usamos el parámetro -X con el valor ours si se debe dar prioridad a la rama master o theirs si se debe dar prioridad a la rama que se fusiona en master.

Para mostrar el procedimiento vamos a suponer que la rama se llama demo.

Primero se actualizan todas las ramas por si hay cambios en origin:

usuario@localhost:~$ git fetch origin

Se cambia a la rama demo y se incorporan los cambios de origin en la versión local:

usuario@localhost:~$ git checkout demo
usuario@localhost:~$ git merge origin/demo

Se vuelve a la rama master y se incorporan los camibios de origin:

usuario@localhost:~$ git checkout master
usuario@localhost:~$ git merge origin/master

Se fusiona por fin la rama demo en master, haciendo que prevalezca demo sobre master en caso de conflictos:

usuario@localhost:~$ git merge -X theirs demo

Todo el procedimiento está muy bien explicado en este hilo de stackoverflow: What is the best (and safest) way to merge a Git branch into master?

Dejar un comentario

No hay comentarios en esta entrada.
*
*

 

No hay trackbacks