О, о ... Я по ошибке совершил довольно сложное изменение (включая переименование подкаталогов и файлов), не зная, что я делаю (или что будет делать Git).
Теперь я хочу отменить все, что:
- коммит полностью отменяется (как будто этого никогда не было, возможно, он также удаляется из истории)
- Восстановите текущий рабочий каталог (где находится
.git
) в определенную ветку (пока подойдет последняя).
Я нашел ссылки на git reset --soft и git reset --hard но я уже доказал себе, что я может нанести реальный ущерб, преждевременно используя команду, не полностью ее понимая. :)
Я нашел справочную страницу git reset, но я все еще не понимаю:
- Что такое
HEAD
? - В чем разница между
HEAD
и* master
? - В моей ситуации (см. выше) мне нужно использовать
--soft
,--hard
или другие (еще 3 варианта)? - Нужно ли запускать другую команду (после выполнения
git reset
), чтобы "финализировать" реверсирование?
ОБНОВЛЕНИЕ: после прочтения ответа ниже:
- Правильно ли я понимаю, что все, что мне нужно сделать в моей ситуации, это ввести одну команду
git reset --hard HEAD^
? - Как проверить правильность выполнения реверсирования?