Git: извлечение файла из предыдущего коммита и изменение его в HEAD

Будьте осторожны в этом случае:

Commit hash - File modified
aaaaaaa       index.php
bbbbbbb       test.php
ccccccc       index.php

Git scm checkout HEAD ~ 1 (или HEAD sccs ^) index.php пытается проверить version-control файл index.php на предыдущий source-control хэш HEAD (bbbbbbb), но это vcs не настоящий хеш-файл предыдущей source-control фиксации, это ccccccc. В source-control предыдущем хэше HEAD index.php revision-control остался без изменений, потому sccs что последнее изменение было vcs внесено в хэш ccccccc.

Чтобы revision-control вернуть какой-либо файл к git-commands предыдущему хешу фиксации, который source-code-control повлиял на файл, используйте:

git log -n 2 --pretty=format:%h path/to/file.ext

Игнорируйте git первый хеш и возьмите второй git хеш, затем:

git checkout  path/to/file.ext
git commit -m 'Revert this file to real previous commit'

git

version-control

2022-05-11T23:45:13+00:00
Вопросы с похожей тематикой, как у вопроса:

Git: извлечение файла из предыдущего коммита и изменение его в HEAD