git reset

Пересунути гілку на інший коміт, наприклад скасувати останні коміти

Що робить

git reset переставляє поточну гілку на вказаний коміт. HEAD~1 — це коміт перед останнім, HEAD~3 — на три назад. Коміти після нього зникають із гілки, а що станеться з їхніми змінами, вирішує прапорець.

--soft залишає зміни в індексі: їх можна одразу закомітити знову, наприклад одним комітом замість кількох. Без прапорця (режим --mixed) зміни лишаються у файлах, але виходять з індексу. --hard викидає їх зовсім.

Обережно. --hard стирає і скасовані коміти, і всі незакомічені правки у відстежуваних файлах. Коміти, які вже є на сервері, краще скасовувати через git revert: reset переписує історію, і звичайний git push не пройде.

Синтаксис

git reset --soft <коміт>
git reset <коміт>
git reset --hard <коміт>

Приклади

Пов’язані команди

Потренувати · Усі команди