Cómo leer files previamente comprometidos sin destruir instantáneas posteriores

Diga, me he comprometido cuatro veces,

git commit -m "commit_4" git commit -m "commit_3" git commit -m "commit_2" git commit -m "commit_1" 

Ahora quiero leer los files conservados durante commit_2 en el directory de trabajo, si uso git reset , no importa --soft o --hard , commit_3 y commit_4 serán borrados. ¿Hay alguna forma de leer files del repository mientras se guardan instantáneas posteriores?

Puede extraer files individuales en confirmaciones específicas usando lo siguiente:

 git checkout <SHA-1 commit_2> path/to/your/file.ext 

donde <SHA-1 commit_2> es el hash de commit_2 , y también se proporciona la ruta para file.ext .