Sobes.tech
Назад к вопросам
Junior — Middle
98

Можешь перечислить и объяснить различные вариации команды git reset?

Компании, где спрашивали
AstonAston

Ответ от нейросети

sobes.tech AI

Команда git reset используется для отмены изменений и перемещения указателя текущей ветки на другой коммит. Основные варианты:

  • git reset --soft <commit> — перемещает HEAD на указанный коммит, изменения остаются в индексе (staging area). Можно повторно закоммитить.

  • git reset --mixed <commit> (по умолчанию) — перемещает HEAD и сбрасывает индекс, но изменения остаются в рабочем каталоге. Позволяет изменить, что будет в следующем коммите.

  • git reset --hard <commit> — перемещает HEAD, сбрасывает индекс и рабочий каталог, удаляя все несохранённые изменения. Используется для полного отката.

Пример:

git reset --hard HEAD~1  # откат на один коммит назад, удаляя все изменения