Difference between revisions of "Git, Rebase"
(Created page with "''Rebase''") |
|||
Line 1: | Line 1: | ||
''Rebase'' | ''Rebase'' (o Reorganizar) permite tomar los cambios confirmados en una rama y re-aplicarlos sobre otra, permitiendo que el flujo de trabajo en git se vea mas ordenado, como si todos los cambios se hubieran realizado de forma lineal, sin ramificaciones.. | ||
==Comando rebase== | |||
Lo primero que debemos hacer es movernos a la rama que deseamos integrar, y luego ejecutar rebase acompañado de la rama a la que queremos integrar los cambios. | |||
<syntaxhighlight lang="bash"> | |||
git checkout rama1 | |||
git rebase master | |||
</syntaxhighlight> | |||
Esto generara una nueva confirmación o commit al final del flujo, el que contendrá los cambios de la rama1. | |||
Ahora para mover el 'puntero' hacia este ultimo commit que se creo por medio del rebase debemos ejecutar lo siguiente: | |||
<syntaxhighlight lang="bash"> | |||
git checkout master | |||
git merge rama1 | |||
</syntaxhighlight> | |||
Una vez hecho esto, los cambios de la rama1 ya están correctamente integrados a master, y se puede borrar con seguridad la rama1. | |||
<syntaxhighlight lang="bash"> | |||
git branch -d rama1 | |||
</syntaxhighlight> | |||
Y finalmente realizamos el push al repositorio remoto. | |||
<syntaxhighlight lang="bash"> | |||
git push origin master | |||
</syntaxhighlight> | |||
'''Nota:'''Es importante solo realizar un rebase sobre cambios que no han sido publicados, porque de lo contrarios, si se realiza sobre cambios que ya han sido publicados, y se hace un push, esto provocara conflictos a los otros usuarios que hagan uso del repositorio. | |||
*Para otros ejemplo de situaciones donde se puede aplicar rebase o para una explicación mas detallada de cuando no es conveniente usar rebase visitar: [http://git-scm.com/book/es/Ramificaciones-en-Git-Reorganizando-el-trabajo-realizado Git - Reorganizando el trabajo realizado]. |
Revision as of 15:35, 10 October 2014
Rebase (o Reorganizar) permite tomar los cambios confirmados en una rama y re-aplicarlos sobre otra, permitiendo que el flujo de trabajo en git se vea mas ordenado, como si todos los cambios se hubieran realizado de forma lineal, sin ramificaciones..
Comando rebase
Lo primero que debemos hacer es movernos a la rama que deseamos integrar, y luego ejecutar rebase acompañado de la rama a la que queremos integrar los cambios.
git checkout rama1
git rebase master
Esto generara una nueva confirmación o commit al final del flujo, el que contendrá los cambios de la rama1.
Ahora para mover el 'puntero' hacia este ultimo commit que se creo por medio del rebase debemos ejecutar lo siguiente:
git checkout master
git merge rama1
Una vez hecho esto, los cambios de la rama1 ya están correctamente integrados a master, y se puede borrar con seguridad la rama1.
git branch -d rama1
Y finalmente realizamos el push al repositorio remoto.
git push origin master
Nota:Es importante solo realizar un rebase sobre cambios que no han sido publicados, porque de lo contrarios, si se realiza sobre cambios que ya han sido publicados, y se hace un push, esto provocara conflictos a los otros usuarios que hagan uso del repositorio.
- Para otros ejemplo de situaciones donde se puede aplicar rebase o para una explicación mas detallada de cuando no es conveniente usar rebase visitar: Git - Reorganizando el trabajo realizado.