Используйте git reflog
, чтобы увидеть, где вы были, и вернуться к этому.(или используйте обозначение типа HEAD@{1}
при сбросе)
Для другой проблемы из git log
получите хэш коммита, в который вы хотите сбросить, и выполните git reset --hard <sha1>
.Или вы можете даже сделать git reset --hard HEAD@{1 day ago}
и т. Д., Если хотите сбросить коммит в какое-то время в прошлом.Поскольку вы переписываете историю, вам придется сделать принудительный толчок - git push -f
Кроме того, почему разработчики подталкивают к производству?Есть ворота - CI, тестирование и т. Д.