[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Duda con Git



Estimados, desde hace un buen tiempo que uso Git como CVS en cualquier proyecto o incluso en diretorios de configuración importanes. Afortunadamente muy rara vez he tenido la necesidad de volver a un commit anterior, pero cada vez que lo tengo que hacer me surge la misma duda. Vamos con un ejemplo...

Supongamos que tengo este historial de commits:

1-->2-->3-->4-->5-->6-->7-->8-->9-->10 (Master)

Cada uno con su head correspondiente.

Estoy entonces en el commit 10 (osea ya hice git commit -a -m "10") pero me doy cuenta que tengo que volver atrás, por ejemplo al commit 6. Hasta ahora el comando que usé es:

git reset --hard <head del commit 6>

Con lo cual me queda lo siguiente:

1-->2-->3-->4-->5-->6 (Master)

Es decir, volví al commit 6 pero perdí todo lo que le sigue.

Lo que me gustaría saber es si hay una forma de hacer que quede lo siguiente:

1-->2-->3-->4-->5-->6 (Master)
                                    \-->7-->8-->9-->10

Osea, que mi rama master quede en el commit 6 pero que los commits posteriores no se pierdan, sino que queden en otra rama por las dudas que más adelante los necesite.

O más simple, volver atrás (y quedarme allí) pero que los commits posteriores al punto al cual estoy volviendo no se pierdan. Me explico bien?

Estimo que tiene que haber una forma, pero curiosamente en muchas páginas solo encuentro como descartar cambios para los cuales aún no se ha hecho el commit, usando git checkout, pero eso no es lo que necesito.

Saludos y muchas gracias.

Mauro.


Reply to: