¿Cómo puedo verificar una versión particular de un archivo en git?
Encontré este correo en la lista de correo , que decía:
$ git checkout HEAD~43 Makefile
$ git reset Makefile
Pero no entiendo cómo averiguar 'HEAD ~ 43', si hago una git log aFile
, ¿cómo puedo saber qué 'HEAD ~ 43' debo usar?
¿Y por qué necesito ejecutar git reset
ese archivo? ¿Qué hace?
Respuestas:
¿Sabes a qué confirmación (es decir, la revisión específica) pertenece el archivo? Entonces hazlo:
El otro comando:
Es para cuando quieres obtener una versión del archivo de un rango atrás (lo que hago por nostalgia).
fuente
HEAD~43
es simplemente arbóreo, por lo que puede usar un hash o una etiqueta. Debe separar treeish del nombre de archivo con--
, de lo contrario, se trata como nombre de archivo. Por ejemplo.fuente
HEAD~43
se refiere a la confirmación (versión) del archivo. En lugar de eso, puede usar el hash de confirmación que obtiene al hacergit log
en el archivo. Si solo desea el archivo, no necesita ejecutarlogit reset
; eso solo es necesario si desea transferir el archivo al HEAD actual.fuente