¿Cómo mover HEAD a la última fecha en git?

1 minuto de lectura

avatar de usuario de max
máximo

Lo que deseo hacer es obtener la versión del archivo que tiene un comentario específico, obtenerlo y usarlo, luego cambiarlo al código más reciente.

git log -g --grep="code submitted version 0.1.2.3"

Esto devuelve un hash 123456Entonces lo hago:

git checkout 123456

y usar la versión anterior.

Ahora quiero cambiar el HEAD volver a lo último. Esto no lo pude hacer. Yo he tratado:

git reset --hard
git clean -f
git pull

¿Algunas ideas?

Avatar de usuario de Micha Wiedenmann
micha wiedenmann

Cuando llamaste git checkout 123456 moviste tu HEAD del compromiso en el que estaba actualmente (muy probablemente el jefe de la master rama) a la confirmación 123456. Por lo tanto, usted está buscando una manera de moverse HEAD volver a la rama en la que estaba anteriormente, lo que puede hacer con:

git checkout master

Si desea echar un vistazo a una revisión específica de un archivo, puede simplemente verlo usando

git show 123456:/txt/file.txt

o verifique temporalmente solo este archivo con

git checkout 123456:/txt/file.txt
// use it
git checkout :/txt/file.txt

Explicación de tus intentos:

git reset --hard

Revierte todos los cambios de la actual HEADpero no se mueve HEAD. Después de un reinicio, git status muestra que todo está “limpio”.

git clean

Elimina todos los archivos sin seguimiento del árbol de trabajo, nuevamente HEAD no se mueve

git pull

Obtiene los cambios anteriores y los fusiona. No es lo que desea.

  • Gracias. Muy buenas explicaciones. Mejor no uso git show porque tengo un binario. “git checkout master” funciona bien. Supongo que lleva algo de tiempo acostumbrarse a git 🙂

    – máx.

    25 de junio de 2013 a las 5:47


  • puedes usar git show 123456:/txt/file.txt > newfile.txt canalizar la salida hacia newfile.txt.

    –Micha Wiedenmann

    25 de junio de 2013 a las 7:09

¿Ha sido útil esta solución?