Po przejściu na repozytorium, naprawdę nie chcesz zmieniać historii. Jeśli jednak jesteś absolutnie pewna,, której nikt nie pobrał/nie pobrał z repozytorium od czasu twojego popełnionego błędu, masz 2 opcje.
Jeśli chcesz całkowicie usunąć commit (i każde zatwierdzenie, które nastąpiło później), wykonaj git reset --hard ABC~
(przy założeniu, że wartość skrótu zatwierdzenia to ABC
). Następnie wykonaj git push -f
.
Jeśli chcesz edytować to zatwierdzenie i zachować zatwierdzenia, które nastąpiły po nim, wykonaj git rebase -i ABC~
. Spowoduje to otwarcie twojego edytora, pokazując listę twoich zatwierdzeń, zaczynając od obraźliwego. Zmień flagę z "wybierz" na "e", zapisz plik i zamknij edytor. Następnie wprowadź niezbędne zmiany w plikach i wykonaj git commit -a --amend
, a następnie wykonaj git rebase --continue
. Śledź to wszystko dzięki git push -f
.
Chcę powtórzyć, te opcje są dostępne tylko dla Ciebie, jeśli nikt nie zrobił wykonał operacji przeciągania lub pobierania, która zawiera Twoje nieprawidłowe zatwierdzenie. Jeśli tak, wykonanie tych kroków tylko pogorszy sprawę.
Oto główna sugestia: zawsze sprawdzaj swoje zatwierdzenia jeden po drugim, zanim je przepchniesz. ZAWSZE. – ckruczek
możliwy duplikat [Usuń wrażliwe pliki i ich zatwierdzenia z historii Git] (http: // stackoverflow.com/questions/872565/remove-sensitive-files-and-their-commits-from-git-history) –