Что такое откат (rollback) — кнопка «отмена» для сломанного продакшна

Вот сценарий, от которого холодеет спина у каждого новичка. Ты выкатил обновление, закрыл ноутбук довольный — а через пять минут прилетает: «сайт не открывается». Первый инстинкт — лихорадочно чинить вживую, на глазах у пользователей. Стоп. Есть ход спокойнее: откат. Одна команда — и на прод возвращается прошлая, рабочая версия. Пожар потушен, а причину ты разберёшь уже без паники.
Что такое откат
Откат (rollback) — это возврат приложения к предыдущей версии, которая точно работала. По сути это кнопка «отмена» для деплоя. Ты не чинишь сломанное на живом сервере под давлением — ты за секунды откатываешься на шаг назад, к состоянию «всё было хорошо». А чинить будешь спокойно и отдельно.
Как это вообще работает
Секрет в том, что хостинг не выбрасывает старые версии. Каждый твой деплой сохраняется как отдельный снимок — версия 1, версия 2, версия 3. Когда ты выкатываешь новую, платформа просто переключает пользователей на неё. Откат — это то же переключение, только назад: «верни всех на версию 2».
На нормальных платформах (Vercel, Netlify и подобных) это буквально кнопка «Rollback» рядом с прошлым деплоем или одна команда в консоли. Ничего пересобирать не надо — та версия уже готова и лежит рядом. Поэтому откат — секунды, а не полчаса тревожной починки.
Почему откат важнее, чем кажется
Новички часто думают про деплой как про «залил и молись». Откат меняет саму психологию:
- Ошибиться не страшно. Знаешь, что можешь вернуться за секунду — выкатываешь смелее и чаще.
- Пользователи не видят пожара. Пока ты ищешь причину, у них снова работает старая, но живая версия. Даунтайм — секунды вместо часа.
- Голова холодная. Худшие правки делаются в панике «прод лежит, все смотрят». Откат снимает это давление — сначала стабильность, потом разбор.
Правильный порядок при аварии всегда один: сначала откатись, потом разбирайся, почему упало. Не наоборот.
Как не остаться без отката
Откат работает не по волшебству — к нему надо быть готовым. Три привычки:
- Деплой маленькими кусками. Выкатил одно изменение — если что, ясно, что откатывать. Свалил десять сразу — ищи потом, какое из них убило прод.
- Проверяй, что откат вообще есть. На своём сервере с ручным деплоем отката может не быть по умолчанию — настраивай его заранее, а не в момент аварии.
- Не путай «работает у меня» с «работает у всех». Многие «пожары» — это когда локально всё зелёное, а на проде красное. Откат тут спасает мгновенно, пока ты ищешь настоящую причину.
Вопрос: откат чинит баг?
Нет, и это важно понять. Откат прячет баг, вернув версию без него, — но сам баг никуда не делся, он в новом коде. Откат покупает тебе время и спокойствие. Починить нужно всё равно, просто уже не в горящем проде, а нормально: нашёл причину, поправил, снова выкатил.
Вопрос: а база данных тоже откатывается?
Осторожно — вот тут ловушка. Код откатывается легко, а вот база данных сама по себе — нет. Если новая версия успела изменить структуру таблиц или удалить данные, простой откат кода вернёт старую программу к уже изменённой базе — и может стать только хуже. Поэтому изменения в базе делают отдельно, аккуратно и обратимо. Про код думай «откачу за секунду», про базу — «семь раз проверю».
Короткие уроки-истории, симулятор агента и ежедневная практика — в нашем мобильном приложении. Бесплатно.





