Atención, en este escenario:
Commit hash - File modified
aaaaaaa index.php
bbbbbbb test.php
ccccccc index.php
git checkout CABEZA ~ 1 (o la cabeza ^) index.php tratar de pago y envío el archivo index.php a anterior hash de cabeza (bbbbbbb), pero esto no es el archivo hash de confirmación anterior real es ccccccc. En el hash anterior de HEAD, index.php aún no se modificó porque el último cambio se realizó en hash ccccccc.
Para revertir algún archivo de confirmación anterior hash que afectó el archivo, utilice:
git log -n 2 --pretty=format:%h path/to/file.ext
Ignorar primera hash y tomar la segunda almohadilla, entonces:
git checkout <second_hash> path/to/file.ext
git commit -m 'Revert this file to real previous commit'
Lo más fácil sería copiar la archive el contenido de esa confirmación particular usando un cliente ui (o desde github bitbucket, etc.) y péguelo en su archivo actual y confirme :) Más fácil que escribir el hash y la ruta – nawfal