Накосячил? Захотел вернуть всё, как было? В Git это делается за пару команд, если знаешь куда смотреть. Вот короткий рецепт, как откатить ветку до конкретного коммита и не рыдать потом над мусорной историей. 

Во время работы иногда что-то пошло не так — лишние коммиты, не тот багфикс или просто «ой». Решение: откатить ветку на нужный коммит и забыть.

1️⃣ Переключись на ветку

git checkout master

(или твоя ветка, не суть)

2️⃣ Посмотри историю

git log --oneline --graph --all

или если настроил алиас:

git hist

3️⃣ Найди нужный хэш коммита

Копируешь первые несколько символов — их хватает.

4️⃣ Жёстко откатываешь

git reset --hard 531ce399ac9a6bbd58f5f60b1dabdaf6747a321e

Внимание: всё, что было после этого коммита — пропадёт. Если боишься — делай git branch backup-ветка перед откатом.

5️⃣ Проверь историю ещё раз

git log --oneline --graph --all

#или

git hist --all

☝️ Важно

  • Если коммиты уже запушены на удалёнку — после reset --hard тебе придётся git push --force.
  • Работай с --force аккуратно, иначе поломаешь чужие ветки.
  • Для откатов, которые не надо насильно пушить, можно использовать git revert.