Как отменить выезд в git?
Я только что проверил более раннюю фиксацию из моего локального репозитория git. Я не внес никаких изменений в это, я просто смотрел на него. Теперь я хочу вернуться к своей последней фиксации - как мне это сделать?
Точная команда, которую я использовал для проверки:
git checkout e5dff6b3c5d704f9b598de46551355d18235ac08
Теперь, когда я печатаю git log, наверху, я вижу, что этот проверочный фиксатор, но ни один из моих последних не совершает. Я случайно удалил их?
Ответы
Ответ 1
Попробуйте сначала:
git checkout master
(Если вы находитесь на другой ветке, чем master
, вместо этого используйте там название ветки.)
Если это не работает, попробуйте...
Для одного файла:
git checkout HEAD /path/to/file
Для всей рабочей копии репозитория:
git reset --hard HEAD
И если это не сработает, вы можете посмотреть в рефлоге, чтобы найти свой старый SHA и reset для этого:
git reflog
git reset --hard <sha from reflog>
HEAD
- это имя, которое всегда указывает на последнюю фиксацию в вашей текущей ветке.
Ответ 2
Чтобы отменить git checkout
сделать git checkout -
, аналогично cd
и cd -
в оболочке.
Ответ 3
Вероятно, вы хотите git checkout master
или git checkout [branchname]
.