- git reset — двигает указатель ветки назад, переписывая историю. Режимы отличаются тем, что происходит с индексом и рабочей директорией.
- git revert — создает новый коммит, отменяющий изменения указанного коммита. Историю не переписывает.
Правило: для опубликованных веток — только revert; reset — для локальной работы.