¿Cómo volver a la versión más reciente en Git?

Recientemente me mudé de SVN a Git y estoy un poco confundido acerca de algo. Necesitaba ejecutar la versión anterior de un script a través de un depurador, por lo que hice el git checkout <previous version hash> e hice lo que tenía que hacer.

Ahora quiero volver a la versión más nueva, pero no conozco el hash. Cuando git log , no lo veo.

¿Cómo puedo hacer esto? Además, ¿hay alguna manera más fácil de cambiar versiones que escribiendo hashes, algo así como "retroceder dos versiones" o "ir a la más reciente cronológicamente"?

git checkout master debería hacer el truco. Para retroceder dos versiones, podría decir algo como git checkout HEAD~2 , pero es mejor crear una twig temporal basada en ese momento, entonces git checkout -b temp_branch HEAD~2

Cuando finaliza la compra de un compromiso específico, git crea una sucursal separada. Entonces, si llamas:

 $ git branch 

Verás algo como:

 * (detached from 3i4j25) master other_branch 

Para volver a la cabecera principal, solo tiene que volver a realizar el pago en su twig principal:

 $ git checkout master 

Este command eliminará automáticamente la twig separada.

Si el git checkout no funciona, probablemente haya modificado los files que entran en conflicto entre las twigs. Para evitar que pierdas código, git requiere que manejes estos files. Tienes tres opciones:

  1. Guarde sus modificaciones (puede mostrarlas más tarde):

     $ git stash 
  2. Deseche los cambios restableciendo la twig separada:

     $ git reset --hard 
  3. Crea una nueva twig con las modificaciones anteriores y comprométalas:

     $ git checkout -b my_new_branch $ git add my_file.ext $ git commit -m "My cool msg" 

Después de esto , puede volver a su twig principal (versión más reciente):

 $ git checkout master 

Esto hizo el truco para mí (todavía estaba en la twig principal):

git reset –hard origin / master

Estoy empezando a profundizar en git, por lo que no estoy seguro si entiendo correctamente, pero creo que la respuesta correcta a la pregunta de OP es que puedes ejecutar git log --all con una especificación de formatting como esta: git log --all --pretty=format:'%h: %s %d' . Esto marca la versión actual desprotegida como (HEAD) y puede get la siguiente de la list.

Por cierto, agrega un alias como este a tu .gitconfig con un formatting ligeramente mejor y puedes ejecutar git hist --all :

  hist = log --pretty=format:\"%h %ai | %s%d [%an]\" --graph 

En cuanto a las versiones relativas, encontré esta publicación , pero solo habla de versiones anteriores, probablemente no haya nada que haga reference a las versiones más recientes.

Para empezar, puedes consultar usando nombres de twigs.

Sé que hay varias maneras de mover la CABEZA, pero dejaré que un experto en git las enumere.

Solo quería sugerir gitk --all Me pareció enormemente útil cuando comencé con git.

Cuando vuelves a una versión anterior,

 $ git checkout HEAD~2 Previous HEAD position was 363a8d7... Fixed a bug #32 

Puede ver su logging de funciones (hash) con este command incluso en esta situación;

 $ git log master --oneline -5 4b5f9c2 Fixed a bug #34 9820632 Fixed a bug #33 ... 

master puede ser reemplazado con otro nombre de twig.

Luego, agréguelo, podrá volver a la function.

 $ git checkout 4b5f9c2 HEAD is now at 4b5f9c2... Fixed a bug #34 

Una solución más elegante y simple es usar

 git stash 

Volverá a la versión local más resentida de la twig y también saveá los cambios en el alijo, por lo que si desea deshacer esta acción, haga lo siguiente:

 git stash apply 

Para volver a la última versión:

 git checkout <branch-name> 

Por ejemplo, git checkout master o git checkout dev