Copiar cambios de una rama a otra en Git

John Wachira 20 junio 2023
  1. Copiar cambios de una rama a otra en Git
  2. Conclusión
Copiar cambios de una rama a otra en Git

Este artículo analiza dos métodos que podemos usar para copiar cambios de una rama a otra en Git.

Copiar cambios de una rama a otra en Git

Estamos demasiado familiarizados con el comando git merge. Podemos usarlo para fusionar dos ramas en una.

Este comando también puede ser un método para copiar cambios de una rama a otra. Sin embargo, solo podemos usarlo si queremos copiar todos los cambios de una rama.

Supongamos que tenemos una rama Master en nuestro repositorio. Desde nuestra rama Master, creamos una nueva rama llamada Dev2.1.

Por supuesto, nuestra nueva rama heredará todas las confirmaciones en la rama Maestra. Luego comenzaremos a desarrollar en nuestra rama Dev2.1.

Para copiar todos los cambios de nuestra rama Dev2.1 a nuestra rama Maestra, podemos fusionar las dos como se muestra a continuación.

Primero, tenemos que pasar por caja a la sucursal Master.

Dominio:

$ git checkout Master

Ahora podemos fusionar Dev2.1 con la rama Master.

Dominio:

$ git merge Dev2.1

Es posible que obtenga conflictos de fusión y que tenga que resolverlos manualmente para completar la fusión.

Supongamos que queremos copiar cambios específicos a la rama Maestro. Haremos algunas confirmaciones en nuestra rama Dev2.1 para que esté por delante de nuestra rama Maestra e intentaremos copiar una confirmación.

Aquí hay una comparación entre nuestras sucursales.

Comparación entre sucursales

Del resultado anterior, nuestro Dev2.1 está por delante de Master por dos confirmaciones. Supongamos que solo queremos copiar los cambios introducidos por la confirmación Python Scripts de nuestra rama Dev2.1 a nuestra rama Master.

Para copiar los cambios, usamos el comando git cherry-pick con el SHA-1 de nuestro comando Python Scripts, como se muestra a continuación.

Cambiemos a nuestra rama maestra:

$ git checkout Master

Para copiar los cambios:

$ git cherry-pick 2521a66

Producción:

Use el comando git cherry-pick para copiar los cambios de la confirmación de Python Script a la rama maestra

Podemos ver que git ha copiado los cambios de la confirmación Python Scripts a la rama Master. Este compromiso debería ser visible si ejecutamos el comando git log.

Dominio:

$ git log --oneline

Producción:

Muestra la lista de las confirmaciones realizadas en un repositorio.

Conclusión

Puede copiar cambios de una rama a otra usando los comandos git merge y git cherry-pick. Puede especificar los cambios con el comando git cherry-pick mientras que el comando git merge copia todos los cambios.

John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

Artículo relacionado - Git Branch