Задать вопрос
Balavnik
@Balavnik

Как откатить состояние папки в Git?

Суть:
1. Есть локальный репозиторий prj, в нём есть коммит v0.82.9
2. В папке source с момента коммита v0.82.9 были произведены изменения.

Как полностью откатить состояние папки к коммиту? Пробовал revert, но он почему-то не работает. Использую GitHub Desktop.
  • Вопрос задан
  • 348 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • ProductStar
    Python + Flask + Git: веб-разработка с нуля
    2 месяца
    Далее
  • Учебный центр IBS
    DEV-007 Введение в систему контроля версий Git
    1 неделя
    Далее
  • Stepik
    Git (система контроля версий)
    1 неделя
    Далее
Решения вопроса 1
sergey-kuznetsov
@sergey-kuznetsov Куратор тега Git
Автоматизатор
Отменить все незакоммиченные изменения в рабочем каталоге поможет команда
git reset --hard

PS. Немного подумав мне теперь нравится такой универсальный и более корректный способ.
git restore --source=хеш_коммита --staged --worktree .

Затем не забудьте закоммитить новые изменения.

Указывая --source=хеш_коммита, вы говорите Git использовать содержимое файлов из этого коммита.

Флаг --staged значит, что изменения будут сразу проиндексированы, как если бы вы их добавили с помощью git add. Этот флаг особенно полезен, если вы хотите сбросить изменения, которые уже были добавлены в индекс, но ещё не закоммичены.

Флаг --worktree указывает Git восстановить файлы в рабочем каталоге до состояния указанного коммита. Это означает, что любые незакоммиченные изменения в рабочих файлах будут сброшены, и файлы будут восстановлены до состояния, соответствующего указанному коммиту.

Точка в конце команды указывает, что операция восстановления должна быть применена ко всем файлам в текущем каталоге и его подкаталогах. Это значит, что все файлы в проекте будут восстановлены до состояния, соответствующего указанному коммиту.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
Made In Dream Санкт-Петербург
от 100 000 до 220 000 ₽
от 250 000 до 320 000 ₽