Я только что проверил более раннюю фиксацию из моего локального репозитория git. Я не вносил в него никаких изменений, я просто смотрел на него. Теперь я хочу вернуться к своей последней фиксации - как мне это сделать?
Точная команда, которую я использовал, чтобы проверить это:
git checkout e5dff6b3c5d704f9b598de46551355d18235ac08
Теперь, когда я набираю git log, вверху я вижу этот извлеченный коммит, но ни один из моих более поздних коммитов не фиксируется. Я случайно удалил их?
Ответы:
Сначала попробуйте следующее:
(Если вы находитесь в другой ветке
master
, вместо этого используйте имя ветки.)Если это не сработает, попробуйте ...
Для одного файла:
Для всей рабочей копии репозитория:
И если это не сработает, вы можете посмотреть в журнале ссылок свой старый SHA-код головы и сбросить его:
HEAD
- это имя, которое всегда указывает на последнюю фиксацию в вашей текущей ветке.источник
HEAD
печатаете дословно. Git уже знает, чтоHEAD
значит. Однако, если вы действительно действительно хотите вместо этого присвоить ему SHA1, вы можете использовать егоgit log
для просмотра журнала фиксации.git reset --hard HEAD
он возвращает меня к той проверенной фиксации ... Я отправлю точную команду, которую использовал, чтобы проверить это.git rev-parse HEAD
и увидеть, что он дает вам SHA1, соответствующий вашей последней фиксации.)Для отмены
git checkout
делатьgit checkout -
, так же , какcd
иcd -
в скорлупе.источник
Вы, наверное, хотите
git checkout master
, илиgit checkout [branchname]
.источник