Cofnij git, który jeszcze nie został popchnięty

Cofnij git, który jeszcze nie został popchnięty
Deweloperzy pracują nad różnymi oddziałami dla różnych funkcji podczas pracy nad dużym projektem rozwoju. Po zakończeniu pracy nad jednym oddziałem, łączą go lub łączą z głównym projektem. Czasami jednak możesz połączyć niewłaściwą gałąź z główną gałęzią. W tej sytuacji Git pozwala cofnąć operację scalania.

Ten napis dotyczy cofnięcia rozprzestrzenionego łączenia git.

Jak cofnąć/powrócić do scalania w git, który nie został popchnięty?

Aby cofnąć/przywrócić rozpoznane git scalanie, można użyć różnych opcji z „Git Reset„Polecenie, takie jak:

  • "-twardy" opcja
  • "-łączyć" opcja

Metoda 1: Cofnij git scalanie za pomocą polecenia „Git Reset -Hard Head ~ 1”

Najpierw zobacz zatwierdzenie scalania, sprawdzając historię zatwierdzenia:

$ git log -linia

Na poniższym zrzucie ekranu można zauważyć, że głowa wskazuje na najnowsze zatwierdzenie scalania:

Następnie uruchom poniższe polecenie, aby cofnąć git scal:

$ git reset -twarda głowa ~ 1

Tutaj "-twardy„Opcja służy do odrzucenia wszystkich zmian w drzewie roboczym i„Głowa ~ 1„Opcja jest wykorzystywana do cofania najnowszego zatwierdzenia:

Następnie zweryfikuj zmiany, przeglądając historię zatwierdzenia:

$ git log -linia

Można zauważyć, że głowa wskazuje teraz na poprzednie zatwierdzenie, co oznacza, że ​​operacja scalania została przywrócona:

Metoda 2: Cofnij git scale

Najpierw wyświetl historię zatwierdzenia, aby wyświetlić zatwierdzenie scalania:

$ git log -linia

Następnie cofnij scalanie, wykonując następujące polecenie:

$ git reset -głowa merge ~ 1

Na koniec zobacz historię zatwierdzenia, aby zweryfikować zmiany:

$ git log -linia

Jak widać, operacja scalania została pomyślnie przywrócona:

Wyjaśniliśmy metody cofnięcia połączenia git, które jeszcze nie zostały popchnięte.

Wniosek

Aby cofnąć scalanie git, które nie zostało jeszcze zepchnięte, możesz użyć różnych opcji z „Git Reset”Polecenie, takie jak„-twardy" Lub "-łączyć”Opcje. Jednak opcja „-Hard” usuwa niezaangażowane zmiany w drzewie roboczym, a opcja „-merge” utrzymuje niezaangażowane zmiany. W tym artykule opisano procedurę cofnięcia scalania git, który nie został popchnięty.