Кнопка «ой»: undo, revert, reset
Именно эта часть превращает Git из рутины в суперсилу. Когда что-то пошло не так — а так будет, — вот как это откатить.
- Выбросить несохранённые изменения — вы (или ИИ) отредактировали файлы и сделали хуже, но ещё не закоммитили. Можно отбросить всё обратно к последнему хорошему коммиту.
- Откатить коммит (revert) — вы сохранили изменение, а потом поняли, что оно плохое.
git revertсоздаёт новый коммит, отменяющий плохой, сохраняя историю честной. - Сбросить к более ранней точке (reset) — вы хотите перемотать проект к тому, каким он был несколько коммитов назад.
# Отменить все незакоммиченные изменения и вернуться к последнему коммиту
git restore .
# Безопасно отменить конкретный плохой коммит (создаёт новый коммит-«отмену»)
git revert <commit-id>
# Перемотать к более раннему коммиту (мощно — попросите ИИ объяснить перед применением)
git reset --hard <commit-id>
Предостережение: git reset --hard безвозвратно отбрасывает работу. Иногда это правильный инструмент, но именно с ним надо быть осторожным. Если не уверены, спросите у ИИ «что именно эта команда сделает с моими файлами?» перед запуском.