Czy mogę usunąć historię moich zatwierdzeń Github? Nie chcę stracić wszystkich moich zobowiązań, tylko ostatnich 10, które zostały zepchnięte na github. Nie mogę się domyślić, jak to zrobić.Usunąć historię zatwierdzania Github
Odpowiedz
Wystarczy wybrać skrót, który chcesz wrócić do i w klonie zrobić:
git reset --hard hash#
git push -f origin branch
gdzie branch
to nazwa oddziału, który chcesz przesunąć. Voilà. Bądź ostrożny przy użyciu siły. Możesz skopiować swój katalog roboczy, dopóki go nie zaznajomisz.
Pracował jak urok! Poza tym nie zdawałem sobie sprawy, że oddział oznaczał nazwę mojego oddziału: P –
jak znaleźć hasz? –
Używam Tig, aby przejrzeć historię haszu, aby znaleźć tę, do której chcę wrócić. Możesz także użyć gitk lub dziennika git lub innego narzędzia, takiego jak drzewo źródłowe. Istnieje wiele opcji sprawdzania historii i znajdowania haszu – matthewdaniel
Jeśli chcesz to zrobić, można użyć HEAD~10
git reset --hard HEAD~10
git push -f origin master
Nie zaleca się zrobić usunąć serwer popełnić historię, w szczególności: jeśli masz zespół ludzi pracujących nad tym repo.
Jeśli masz zespół ludzi pracujących nad tym, polecam wycofać się, dodając kolejne zatwierdzenie, które cofa twój kod, którego nie chcesz.
Załadowałem wszystkie z moich plików do mojego pierwszego projektu github, w tym niektóre pliki ustawień z tajnymi kluczami. Musiałem wrócić i usunąć wszystkie wersje, które zostały dołączone przed dodaniem pliku .gitignore
i usunąć wszystkie pliki ustawień z pamięci podręcznej mojego projektu.
gedit ./.git/logs/HEAD
Znajdź 40-znakowy hash SHA 'nowej root', który chcesz usunąć wszystko przed. Skopiuj go do schowka i zamknij. (Możesz, ale nie musisz, użyć , domyślnego edytora tekstu dla Linuxa).
$> gedit ./.git/info/grafts
Wklej SHA tutaj. Przejdź do katalogu swojego projektu.
$> cd ../..
$> git filter-branch
Wymusza impuls do kapitana, w przeciwnym razie będzie to zablokować próbę usunięcia swojej historii.
$> git push --force -u origin master
Usuń plik grafts
.
$> rm ./.git/info/grafts
Nevermind
Cóż, moja odpowiedź jest tylko połowa sukcesu. Moja aktywność publiczna RSS nadal ma linki do wszystkich różnic, które szczegółowo informacje, które chciałem usunąć. Najwyraźniej there is no way to delete this, ale prawdopodobnie powinieneś przeczytać Change your Password i zaktualizować wszelkie poufne dane, które przypadkowo zostały przesłane.
Po prostu chciałem dodać do tego, ponieważ wpadłem na to dzisiaj ze względu na sytuację, w której ja sam stworzyłem niezwykłą sytuację. Ale jednym z rozwiązań, które możesz zrobić po wykonaniu kroku [Usuń wrażliwe dane] (http://help.github.com/remove-sensitive-data/), utwórz nowe repozytorium i przepchnij wszystkie swoje najnowsze czyszczenie, i usuń stare repozytorium. Powoduje to unieważnienie odsyłaczy do twoich starych oddziałów/diffów w kanale aktywności publicznej, a github rzuci 404, ponieważ repo już nie istnieje. –
Po zainstalowaniu Git można również kliknąć prawym przyciskiem myszy folder repozytorium - Git GUI Tutaj.
Wybierz Repozytorium - Wizualizuj całą historię gałęzi.
Kliknij prawym przyciskiem myszy żądane zatwierdzenie - Tutaj zresetuj historię oddziału głównego tutaj.
Teraz masz 3 opcje:
Gdy wybrana, wybierz Plik - Odśwież.
Udało się to ustalić po wybraniu Przywróć przy zatwierdzeniu w GitHub Desktop, a następnie Przywróć ponownie, aby powrócić do oryginalnego kodu, a następnie po prostu chcieć oczyścić te przywracane pary przywracania.
- 1. Jak usunąć całą historię zatwierdzania w github?
- 2. GitX - Jak wyświetlić historię zatwierdzania pojedynczego pliku?
- 3. Łącza do wiadomości zatwierdzania Github
- 4. Jak rozwiązać problem JIRA z wiadomości zatwierdzania GitHub?
- 5. github for mac nie zezwala na wykonywanie częściowego sprawdzania/zatwierdzania
- 6. Różnice między stanami zatwierdzania interfejsu API Github "niepowodzenie" i "błąd"?
- 7. Jak usunąć oddział z GitHub?
- 8. Jak zrobić Github śledzić historię katalogu po zmianie nazwy?
- 9. Zobacz historię w GitHub po zmianie nazwy folderu
- 10. Czy git rebase może całkowicie usunąć zdalną historię?
- 11. Jak usunąć wcześniej dodane poddrzewo git i jego historię
- 12. Git usuń historię zatwierdzenia
- 13. Jak usunąć nagłówek na stronach Github?
- 14. Jak usunąć pliki z repozytorium GitHub?
- 15. Jak wyeksportować historię wersji gdoc do git?
- 16. Jak zapisać historię IEx?
- 17. Pobierz historię konsoli
- 18. W jaki sposób użytkownik GitHub może przeglądać historię zmian w celu wydania komentarzy?
- 19. Jakie graficzne narzędzie git dla komputerów Mac może wyświetlać historię plików lepiej niż github?
- 20. Czy można uzyskać historię commitów dla jednego pliku w github api?
- 21. github: Jak usunąć wszystkie zatwierdzenia przez określoną nazwę użytkownika?
- 22. Jak odrzucić/usunąć siebie z repozytorium GitHub (współpracy)?
- 23. Jak usunąć repozytorium Github dla testów Travis CI?
- 24. Używanie git-shell i ograniczanie programistów do zatwierdzania własnych projektów
- 25. Github Zatwierdzanie wiadomości Github "@"
- 26. Przypisanie git commit do wydania github ręcznie
- 27. Jak scalić istniejące repozytorium git w puste i zachować historię?
- 28. Jak załadować repozytorium jednego pliku do Gista, zachowując historię?
- 29. Jak wyczyścić historię w WKWebView?
- 30. Zobacz historię git dla folderu
Zobacz http://stackoverflow.com/questions/495345/git-removing-selected-commits-from-repository Zauważ, że robienie tego typu rzeczy jest złym pomysłem, jeśli inne osoby współpracują z tym samym repozytorium. Zazwyczaj lepiej jest przejść przez uderzenia w historię i po prostu iść naprzód. –
Świetny link. Dziękuję Ci! –