Накосячил? Захотел вернуть всё, как было? В 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.
0 комментариев