Git Удалить последний коммит
Иногда поздно ночью, когда у меня кончился кофе, я совершаю вещи, которых не должен был иметь. Затем я провожу следующие 10 - 15 минут в поисках того, как удалить последний сделанный мной коммит. Так что после третьего раза я хотел сделать запись этого, чтобы я мог обратиться к этому позже.
Если вы совершили мусор, но не столкнулись,
git reset --hard HEAD~1
HEAD ~ 1 - это сокращение для коммита перед головой. В качестве альтернативы вы можете обратиться к SHA-1 хэша, который вы хотите сбросить. Обратите внимание, что при использовании --hard любые изменения в отслеживаемых файлах в рабочем дереве, начиная с фиксации перед заголовком, теряются.
Если вы не хотите уничтожать проделанную вами работу, вы можете использовать
--soft
опцию, которая удалит коммит, но оставит все ваши измененные файлы «Изменения будут зафиксированы», как будет указано в git status.
Теперь, если вы уже нажали, а кто-то нажал, что обычно является моим случаем, вы не можете использовать git reset. Вы можете, однако, сделать мерзавец,
git revert HEAD
Это создаст новый коммит, который перевернет все, что было введено случайным коммитом.