git reflog
должен отображать коммит, на который ранее ссылалась HEAD перед вашим сбросом.
(git reflog
, ваша сеть безопасности )
Смотрите " Отмена сброса git --hard HEAD ~ 1"в качестве конкретного примера.
Вы также можете попробовать, только с git log
, параметр -g
:
-g, --walk-reflogs
Вместо того, чтобы ходить по цепочке предков коммитов, перебирайте записи рефлогов от самых последних к более старым
В конце концов, git reflog
можно сделать с помощью git log -g --oneline
.
git log --walk-reflogs master # show reflog entries for master
OP rFactor добавляет:
Можно ли отфильтровать все, кроме слияний и фиксаций?
Например, я хочу получитьизбавиться от Checkout
и Updating HEAD
.
Я не понимаю, как этого можно добиться без фильтрации вывода.
Jefromi согласен в комментариях:
git reflog ... | grep -v 'checkout:\|updating HEAD'
Кроме того, после того, как вы выясните, какой коммит вы хотите видеть, вы можете использовать log нормально:
git log HEAD@{7}
# or
git log <SHA1>