Git Usuń ostatnie zatwierdzenie
Raz na jakiś czas późno w nocy, kiedy zabrakło mi kawy, popełniam rzeczy, których nie powinienem mieć. Następnie spędzam następne 10–15 minut na wyszukiwaniu, jak usunąć ostatni zatwierdzony plik. Więc po raz trzeci chciałem go nagrać, aby móc później do niego wrócić.
Jeśli popełniłeś śmieci, ale nie wypchnąłeś ich,
git reset --hard HEAD~1
HEAD ~ 1 jest skrótem dla zatwierdzenia przed głową. Alternatywnie możesz odwołać się do SHA-1 skrótu, który chcesz zresetować. Zauważ, że podczas używania --hard wszelkie zmiany w śledzonych plikach w pracującym drzewie od czasu utraty zatwierdzenia przed głową.
Jeśli nie chcesz wymazać pracy, którą wykonałeś, możesz użyć
--soft
opcji, która usunie zatwierdzenie, ale pozostawi wszystkie zmienione pliki „Zmiany do zatwierdzenia”, tak jak napisałby status git.
Teraz, jeśli już nacisnąłeś i ktoś pociągnął, co zwykle jest moim przypadkiem, nie możesz użyć git reset. Możesz jednak przywrócić git,
git revert HEAD
Spowoduje to utworzenie nowego zatwierdzenia, które odwróci wszystko wprowadzone przez przypadkowe zatwierdzenie.