Как я могу отменить все изменения, внесенные в мой каталог после последнего коммита, включая удаление добавленных файлов, сброс измененных файлов и добавление удаленных файлов?
Reset все изменения после последнего фиксации в git
Ответ 1
Сначала reset изменения
git reset HEAD --hard
тогда очистите все, что не видно. Если вы хотите сохранить файлы, которые не отслеживаются из-за .gitignore
, будьте осторожны с этой командой.
git clean -fd
Ответ 2
Как мне отменить каждое изменение, внесенное в мой каталог после последней фиксации, включая удаление добавленных файлов, сброс измененных файлов и добавление обратно удаленных файлов?
Вы можете отменить изменения в отслеживаемых файлах с помощью:
git reset HEAD --hard
Вы можете удалить неотслеживаемые файлы с помощью:
git clean -f
Вы можете удалить неотслеживаемые файлы и каталоги с помощью:
git clean -fd
но вы не можете отменить переход на неотслеживаемые файлы.
Вы можете удалить игнорируемые и неотслеживаемые файлы и каталоги
git clean -fdx
но вы не можете отменить переход на игнорируемые файлы.
Вы также можете установить clean.requireForce
на false
:
git config --global --add clean.requireForce false
избегать использования -f
(--force
) при использовании git clean
.
Ответ 3
В этой ситуации будут работать две команды,
root> git reset --hard HEAD ~ 1
root> git push -f
Подробнее о командах git см. на этой странице page