git Отмена, откат изменений
Отмена не добавленых и не зафиксированных изменений (без add и без commit):
Изменений в файлах, которые уже были под контролем, но для новых изменений не был сделан add
Отмена изменения (удаление) для совсем новых файлов и папок, т.е. фактическое их удаление (только появились, не было git add)
Отмена add -- отмена добавленых, но не зафиксированных изменений (т.е. с add, но без коммит). В том числе новых файлов.
Отмена/откат commit-ов (т.е. зафиксированных изменений -- можно разными способами):
git revert -- откат коммитов, с помощью создания противоположных им (действие будет отражаться в истории) -- можно после push (меньше проблем чем с reset)
git reset -- удаление коммитов (в том числе мягкое -- чтобы изменения коммита стали "незафиксированными")
Отмена изменений после неудачного слияния (merge).
Откат локальной ветки к ранее опубликованному состоянию из внешнего репозиторий