Git reflog: восстановить потерянный коммит
Если после reset, rebase или удаления ветки пропал коммит, найдите прежнее положение HEAD через git reflog. Пока объект не очищен сборщиком мусора, на него можно создать ветку и вернуть работу без переписывания чужих refs.
Рабочий пример
git reflog --date=local -n 15
git show --stat 'HEAD@{3}'
git branch recover/payment-fix 'HEAD@{3}'
git log --oneline -5 recover/payment-fixreflog хранит локальную историю перемещения HEAD и ссылок. HEAD@{3} — пример: выберите запись с нужной датой и сообщением. Новая ветка закрепляет коммит, чтобы его можно было сравнить или перенести.
Частый вопрос
Можно ли восстановить коммит после удаления ветки?
Да, если коммит доступен в reflog или объектной базе. Найдите его хеш и создайте ветку командой git branch имя хеш, затем проверьте историю.