Gita

Jaka jest różnica między „Git Reset” a „Git Reset - Hard”?

Jaka jest różnica między „Git Reset” a „Git Reset - Hard”?

Git jest znany jako najpopularniejszy system kontroli wersji. Pojęcie kontroli wersji nabiera znaczenia, gdy mówimy o pracy zespołowej i współpracy. Na przykład, jeśli wielu pracowników pracuje nad jednym projektem, spójność danych jest głównym problemem, który należy rozwiązać. Nie można po prostu założyć, że zmiana dokonana przez jednego z pracowników zostanie automatycznie powiadomiona o wszystkich pozostałych pracownikach pracujących nad tym projektem. Powinien raczej istnieć odpowiedni mechanizm, dzięki któremu można zapewnić spójność danych.

Teraz, jeśli mówimy o oprogramowaniu lub systemie do kontroli wersji, to jak sama nazwa wskazuje, jego głównym zadaniem jest śledzenie historii wersji. Oznacza to, że wszystkie zmiany wprowadzone do konkretnego pliku będą traktowane jako oddzielne wersje tego pliku. Oprogramowanie lub system do kontroli wersji zasadniczo pozwoli Ci powrócić do starszej wersji w dowolnym momencie, zgodnie z Twoimi potrzebami. Poza tym system kontroli wersji, taki jak Git, zapewnia również, że zmiany wprowadzone do dowolnego pliku mają taką samą widoczność dla wszystkich użytkowników, którzy mają dostęp do tego pliku, aby nie mogli przypadkowo rozpocząć pracy na starszej wersji lub kopii tego pliku.

Tak jak każdy inny system kontroli wersji, Git również pozwala nam wykonywać pewne operacje na plikach, które na niego wgrywamy. Co więcej, w dowolnym momencie zapewnia również możliwość cofnięcia zmian wprowadzonych w określonym pliku poprzez jego zresetowanie. Dzisiaj staramy się wyjaśnić różnicę między operacjami „git reset” i „git reset -hard”.

Zrozumienie różnicy między „git reset” a „git reset -hard”

Zanim zrozumiemy różnicę między operacjami „git reset” i „git reset -hard”, musimy znać niektóre z najważniejszych terminologii używanych w tym systemie kontroli wersji. „Głowa” w Git jest zdefiniowana jako wskaźnik, którego zadaniem jest wskazanie ostatniego zatwierdzenia lub zmiany wprowadzonej w pliku. „Indeks” jest zdefiniowany jako zestaw wszystkich plików, które zostały niedawno zatwierdzone i mają zostać zatwierdzone w następnej kolejności. Wreszcie „Katalog roboczy” odnosi się do zestawu plików z całego systemu plików, na którym aktualnie pracujesz.

Po zapoznaniu się z tymi terminologiami będzie Ci teraz bardzo łatwo zrozumieć różnicę między operacjami „git reset” i „git reset -hard”. Jak już wspomnieliśmy, istnieje wiele opcji, które można wykonać na pliku przesłanym na Git, podobnie „git reset” jest zdefiniowany jako domyślna operacja, za pomocą której można cofnąć ostatni zatwierdzenie lub zmianę dokonaną w aktualny dokument. Teraz ta operacja ma pięć różnych opcji, a mianowicie: twarde, miękkie, połączone, zmieszane i zachowaj.

W zależności od opcji, którą wybrałeś lub użyłeś z poleceniem „git reset”, otrzymasz inny poziom „cofnij”. Operacja „git reset -hard” jest uważana za najbardziej efektywną operację, jeśli chcesz całkowicie pozbyć się ostatniego zatwierdzenia. Oznacza to, że gdy wykonasz tę operację, zmieni się nagłówek twojego pliku, i.mi., nie będzie już wskazywać na ostatnie zatwierdzenie. Nie tylko to, ale także usunie twój ostatni zatwierdzenie z twojego indeksu, a nawet zmieni twój bieżący katalog roboczy.

Z drugiej strony, jeśli użyjesz innej opcji z poleceniem „git reset”, takiej jak „miękkie”, to zrobienie tego zmieni tylko pozycję twojej głowy. Poza tym nie spowoduje to żadnych zmian w indeksie ani nie zmieni bieżącego katalogu roboczego. Krótko mówiąc, możemy powiedzieć, że „git reset” jest poleceniem, podczas gdy „git reset -hard” jest jego odmianą, która jest używana, gdy chcesz wymazać wszystkie ślady ostatniego zatwierdzenia.

Wniosek

Przechodząc przez to szczegółowe wyjaśnienie operacji „git reset” i „git reset -hard”, od teraz z łatwością będziesz w stanie je odróżnić. W tym artykule dowiesz się również, której opcji należy użyć z poleceniem „git reset” w zależności od konkretnych wymagań.

Emulate Mouse clicks by hovering using Clickless Mouse in Windows 10
Using a mouse or keyboard in the wrong posture of excessive usage can result in a lot of health issues, including strain, carpal tunnel syndrome, and ...
Add Mouse gestures to Windows 10 using these free tools
In recent years computers and operating systems have greatly evolved. There was a time when users had to use commands to navigate through file manager...
Control & manage mouse movement between multiple monitors in Windows 10
Dual Display Mouse Manager lets you control & configure mouse movement between multiple monitors, by slowing down its movements near the border. Windo...