Haga que la rama de desarrollo sea idéntica a la rama principal

John Wachira 20 junio 2023
Haga que la rama de desarrollo sea idéntica a la rama principal

Este artículo analiza cómo restablecer una rama de desarrollo para que sea idéntica a la rama maestra. Supongamos que ha clonado un repositorio de Git y ha creado una rama de desarrollo a partir de la rama maestra.

Después de jugar con el código, te das cuenta de que tu rama está desordenada y quieres restablecerla para que coincida con la rama maestra. ¿Cómo haces esto?

Haga que la rama de desarrollo sea idéntica a la rama principal

Podemos emplear dos métodos para restablecer una rama de desarrollo a maestra. El más simple y limpio es recrear el puntero.

Para recrear el puntero para la rama desarrollo, cambie a la rama maestra y ejecute el siguiente comando.

$ git branch -f development master

Esto restablecerá el historial de confirmaciones de la rama desarrollo para que coincida con el historial de confirmaciones de la rama maestra.

Una alternativa para esto implica el comando git reset. Primero, cambie a la rama desarrollo y ejecute el siguiente comando.

$ git reset --hard master

Este comando tendrá el mismo efecto que el comando git branch -f. Sin embargo, ambos comandos eliminarán los cambios en la rama desarrollo que no están presentes en la rama maestra.

Si no desea eliminar estos cambios, puede crear una confirmación que refleje el estado actual de su rama maestra. Para hacer esto, siga estos pasos:

Primero, cambia a la rama desarrollo con el comando git checkout development. Combine la rama maestra con la rama desarrollo sin crear una confirmación, como se muestra a continuación.

$ git merge master --no-commit

Este comando combinará los cambios pero detendrá la combinación antes de la parte de confirmación. Con el siguiente comando, puede consultar los cambios de la rama maestra del archivo index.

$ git checkout --theirs master .

No olvides incluir el . al final del comando. Lo que queda es confirmar los cambios.

$ git commit -m"Resetting development to master"

Esto preservará los cambios no presentes en la rama maestra y reflejará el estado actual de la rama maestra.

En pocas palabras, puede restablecer cualquier rama a maestra recreando el puntero o con la ayuda del comando git reset --hard. Ambas formas eliminarán los cambios no presentes en la rama maestra.

Si desea mantener estos cambios, use el último método que discutimos.

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 Reset