W tym artykule opracuje cię, jak zgniatać wszystkie zatwierdzenia w jednym zatwierdzeniu w Git. Wdrożyliśmy wszystkie kroki w dystrybucji Linux Centos 8.
Squash zobowiązuje się do jednego z git
Możesz zaimplementować zgniatanie GIT w następujących krokach:
Krok 1: Wybierz Rozpocznij zatwierdzenie
Aby ustalić, ile zobowiązań potrzebujesz do zgniatania, następujące polecenie uruchomisz na terminalu:
$ git logTeraz wywołasz git, aby rozpocząć interaktywną sesję rebazy za pomocą następującego polecenia:
$ git rebase -i head ~ nW powyższej głowie „n” to całkowita liczba zobowiązań, które ustaliłeś na podstawie polecenia „git log”. Załóżmy, że liczba zobowiązań to 4. Teraz polecenie zmieni się w następujący formularz:
$ git rebase -i head ~ 4Na terminalu wyświetli się następująca lista zatwierdze.
Krok 2: Zmień wybierz na squash
Tutaj zaznaczamy wszystkie zatwierdzenia jako squashable, zostawmy pierwsze zatwierdzenie, które zostanie wykorzystane jako punkt wyjścia. Zmień więc edytor VIM na tryb wstawienia, naciskając „I” i zmień wszystko,. Teraz naciśnij „ESC”, aby zmienić tryb wstawki i naciśnij ”: WQ!„Aby zapisać wszystkie zmiany i zrezygnować. Jeśli używasz prostego edytora tekstu, możesz po prostu zmienić słowo „wybierz” na „squash” i zapisać zmiany. Następnie zobaczysz następujące okno na terminalu:
Po opuszczeniu tej powłoki zobaczysz następujące wiadomości w oknie terminalu:
Jeśli to wszystko zgniatasz, zobaczysz wszystkie zobowiązania połączone w jedno oświadczenie zatwierdzenia, które wyświetli się na terminalu:
Wniosek
Korzystając z git squash, możesz łatwo zgniatać lub skompresować wiele zobowiązań do mniejszego pojedynczego zatwierdzenia. Możesz użyć tej techniki, aby naprawić błędy pisowni dokumentacji. W tym artykule wdrożyliśmy git squash. Widzieliśmy również, w jaki sposób możemy wyczyścić historię za pomocą poleceń Git Rebase i Squash.