Wielu z Was słyszało o nowych komendach git switch i git restore. Zastanawiacie się pewnie: „Po co Git wprowadza dwa nowe polecenia, skoro jest jedno – git checkout?”
Wprowadzono je, aby zwiększyć komfort użytkowania, ułatwić pracę poprzez bardziej intuicyjne komendy. Skorzystają na tym zwłaszcza nowi użytkownicy. A starszym może się spodobać, bo nowe komendy są krótsze do wklepania 😛

Git Switch
Git Switch – ta komenda służy tylko do obsługi branchy lub commitów. Pozwala w intuicyjny sposób przełączyć się pomiędzy branchem lub commitem (switch = przełącz/zmień).
Np. git switch develop
Git Switch – pozwala także utworzyć nowy branch i od razu do niego przejść
Np. git switch -c new_feature
– tak jak to było z poleceniem git checkout -b new_feature
Git Switch pozwala także przełączyć się do stanu ‘detached HEAD’, gdzie ustawiamy znacznik HEAD na określonym commitcie, zamiast na końcu branchu
Np. git switch -d f8cd3ee
Git Restore
Git Restore – ta komenda przejęła zachowanie polecenia git checkout, kiedy chcemy przywrócić plik do poprzedniej (pierwotnej) wersji z obecnego commita branch’a. Domyślnie jest to branch, na którym obecnie pracujemy, ale może to też być dowolny branch.
Np. git restore -- plik.txt
dla obecnego branchu lub
Np. got restore main -- plik.txt
dla konkretnego podanego branchu
Dlaczego je rozdzielili? By Git był prostszy do nauki i czytelniejszy, bardziej intuicyjny. Więcej szczegółów znajdziecie pod linkami: