Git cofnij się

Git cofnij się
Git to niesamowite narzędzie, które daje programistom dużą moc. Jednak w przeciwieństwie do innych systemów, GIT nie zapewnia przełącznika resetowania, jeśli coś pójdzie nie tak.

Jednak Git dołoży wszelkich starań, aby zapewnić niechciane i niebezpieczne operacje w repozytorium.

W tym artykule omówimy, w jaki sposób możemy cofnąć operację git naciągania. Może się to zdarzyć, jeśli zmiany w zdalnym repozytorium są zepsute z lokalnymi zmianami. Lub jeśli chcesz wrócić do stanu przed wykonaniem operacji ciągnięcia.

Co to jest git ciągnięcia?

Polecenie Git Pull umożliwia pobranie zmian w zdalnym repozytorium i połączenie ich z lokalnym repozytorium.

GIT zacznie od sprawdzenia, czy występują jakieś zmiany w zdalnym repozytorium, które nie są dostępne w lokalnym repozytorium po uruchomieniu polecenia git pull.

Jeśli tak, Git wykonuje pobranie, aby pobrać zdalne zmiany w systemie lokalnym. Wreszcie, GIT przeprowadzi operację scalania, aby zsynchronizować zmiany w lokalnym repozytorium.

Mówiąc najprościej, polecenie GIRT Pull umożliwia wprowadzenie najnowszych zmian w zdalnym repozytorium.

Jeśli uruchomisz polecenie Git Pull, powinieneś zobaczyć metadane i informacje o zmodyfikowanych plikach.

Pokazano przykładowe dane wyjściowe:

$ Git Pull
Zdalny: wymienienie obiektów: 3, gotowe.
Pilot: Liczenie obiekty: 100% (3/3), gotowe.
Zdalne: kompresujące obiekty: 100% (3/3), gotowe.
Remote: ogółem 3 (Delta 0), ponownie używany 0 (Delta 0), wciągnięta w pakiet 0
Obiekty rozpakowywania: 100% (3/3), 1.45 kib | 93.00 kib/s, gotowe.
Z https: // github.com/nazwa użytkownika/reponame
9B076C0… B768A43 Master -> Origin/Master
Aktualizacja 9B076C0… B768A43
Szybkie do przodu
Readme.MD | 15 ++++++++++-----
1 Zmieniony plik, 10 wstawek (+), 5 delecji (-)

Z powyższego wyjścia widzimy, że tylko Readme,.plik MD został zmodyfikowany.

Załóżmy, że chcemy cofnąć powyższą operację ciągnięcia. Jak byśmy to zrobili?

Git Reset

Polecenie resetowania GIT pozwala nam powrócić do określonego punktu w repozytorium. Na przykład możemy użyć tego polecenia, aby cofnąć operację GIT.

Zauważ, że dobrze jest pamiętać, że uruchomienie polecenia resetowania git odrzuci wszelkie zmiany, które nie zostały popełnione w konkretnym repozytorium. Stąd, aby zapobiec utratę zmian, wykonaj zobowiązanie do zmian, które chcesz zachować.

Aby cofnąć operację ciągnięcia git, zacznij od pobrania określonego punktu. Na przykład możesz to zrobić za pomocą polecenia Git Reflog:

$ Git RefLog

Polecenie powinno zwrócić dzienniki i zmiany dokonane w repozytorium. Znajdź ten przylegający do operacji ciągnięcia jako:

W takim przypadku chcemy powrócić do zatwierdzenia 9B076C0

Możemy teraz uruchomić polecenie resetowania git jako:

Git Reset 9B076C0 -Hard

Możesz użyć instrukcji Head, aby ułatwić zadanie, jeśli nie wprowadziłeś żadnych zmian po operacji ciągnięcia.

$ git reset head ~ 1 -Hard

Zauważ, że użyj instrukcji Head tylko wtedy, gdy nie wprowadziłeś żadnych zmian w repozytorium po operacji ciągnięcia.

Jest tak, ponieważ głowica ~ 1 przeniesie repozytorium z powrotem do jednego zatwierdzenia, niezależnie od tego, czy jest to operacja ciągnięcia, czy nie.

Zauważ, że w zależności od wersji GIT możesz zastąpić flagę -Hard jako:

$ git reset -eep głowa ~ 1

Opcja -hard zmusi niezaangażowane zmiany do odrzucenia.

Możesz dowiedzieć się więcej:

https: // git-scm.COM/DOCS/GIT RESET

Wniosek

W tym artykule dowiedzieliśmy się, jak cofnąć operację ciągnięcia. Omówiliśmy również, jak działa operacja gita.