Давайте предположим недавнюю историю, подобную этой, где вы захотите вернуться к коммиту C, поскольку коммиты D и E плохие.Я также предполагаю, что это происходит в основной ветке, но не стесняйтесь приспосабливаться.
A--B--C--D--E
^
master <<< HEAD
Как найти ссылку на "хороший" коммит для возврата?
git log --oneline -15
должно быть достаточно, чтобы обнаружить его (сохранить его хэш и использовать его в следующей команде)
Теперь давайте перейдем к вашему локальному:
git checkout master
git reset --hard C
Затем отразитьваша новая ситуация на удаленном конце (github)
git push --force origin HEAD
И окончательная ситуация будет
A--B--C D--E (dangling, will be garbage collected later)
^
master <<< HEAD