2012-05-02 6 views
8

Hice una extracción de git y descubrí que uno de mis archivos debe fusionarse.Cómo esconder el código no mezclado en git?

Realmente no quiero fusionar ese archivo en este momento. Tengo otra rama en la que necesito trabajar y volveré a esta rama más tarde para resolver la fusión.

¿Cuál es la mejor medida de acción para "deshacer" esta atracción? ¿O cómo puedo mantener esta fusión hasta que esté listo para enfrentarlo? ¿Qué debo hacer para poder cambiar las ramas, pero luego regresar a este estado no compartido en mi código?

Respuesta

10

Este es un buen ejemplo de por qué considero que hacer una búsqueda en lugar de un tirón es una buena idea.

Lo que puede hacer es simplemente restablecer la rama en su estado anterior ..

git reset --hard HEAD~1 

o si ya está en el medio de la fusión (resolución de conflictos), acaba de abortar ..

git merge --abort 

terminar sus cambios y luego ...

git fetch 
...have a look at what's changed 
git merge origin/branch 

Una manera fácil de ver lo que ha cambiado es hacer

git cherry branch origin/branch -v --abbrev=6 

que le dará una lista de confirmaciones que se encuentran en la rama de origen, pero no en su rama ... Si necesitas los detalles de lo cambiado en ese entonces se comprometen

git show commit --name-status 
1

Si está buscando eliminar los cambios en un HEAD actual, git reset --hard es su ticket. Esto debería permitirle intercambiar ramas y volver a esta y rehacer esta combinación en una fecha posterior.

Si está realizando una nueva configuración, git rebase --abort cancelará la operación también.

Cuestiones relacionadas