Git, powszechnie znany system kontroli wersji, jest nieocenionym narzędziem dla deweloperów na całym świecie. W tym artykule odkryjemy siedem rzadko używanych, ale niezwykle potężnych opcji Git, które zwykle umykają uwadze w standardowych tutorialach i cheatsheetach.
1. git bisect
– Efektywne Debugowanie
git bisect
to potężne narzędzie do debugowania, pozwalające szybko znaleźć commit wprowadzający błąd. Przez automatyczne przeszukiwanie historii commitów, git bisect
pomaga zidentyfikować konkretny moment, w którym coś poszło nie tak.
Jak używać:
git bisect start
git bisect bad [zły_commit]
git bisect good [dobry_commit]
Git teraz będzie automatycznie przełączał commity, umożliwiając sprawdzenie, kiedy dokładnie wystąpił błąd.
2. git reflog
– Ratunek Dla Straconych Commitów
git reflog
śledzi zmiany wskaźnika HEAD, co jest nieocenione w sytuacji, kiedy potrzebujesz odzyskać „stracony” commit.
Przykład użycia:
git reflog
Możesz znaleźć i przywrócić commit nawet po resecie lub rebase.
3. git cherry-pick
– Precyzyjne Zastosowanie Commitów
git cherry-pick
pozwala na wybranie konkretnych commitów z jednej gałęzi i zastosowanie ich na innej. Jest to niezwykle przydatne, gdy chcesz szybko przenieść tylko niektóre zmiany.
Jak to zrobić:
git cherry-pick [commit_id]
4. git stash --patch
– Selekcja Zmian do Schowka
Standardowo git stash
zapisuje wszystkie zmiany. Opcja --patch
pozwala wybrać konkretne fragmenty kodu, które chcesz schować, zapewniając większą kontrolę.
Przykład użycia:
git stash --patch
Wybierz, które zmiany chcesz zachować w stash.
5. git worktree
– Równoczesna Praca na Wielu Gałęziach
git worktree
pozwala na utworzenie dodatkowych katalogów roboczych dla różnych gałęzi. To idealne rozwiązanie dla pracy nad kilkoma funkcjami jednocześnie bez konieczności ciągłego przełączania gałęzi.
Jak to działa:
git worktree add [ścieżka] [gałąź]
6. git rebase -i
– Interaktywne Rebazowanie
Chociaż często używane, interaktywne rebazowanie (-i
) oferuje zaawansowane opcje edycji historii commitów, w tym zmianę kolejności, scalanie, edycję lub usuwanie commitów.
Przykład użycia:
git rebase -i HEAD~[liczba_commitów]
7. git blame -L
– Szczegółowa Analiza Konkretnych Linii
git blame
jest znane, ale git blame -L
pozwala na szczegółową analizę określonych linii kodu, wskazując, kto i kiedy dokonał zmian.
Jak używać:
git blame -L [start],[koniec] [plik]
Te siedem rzadko używanych opcji w Git otwiera nowe możliwości w zarządzaniu kodem i debugowaniu. Korzystając z nich, deweloperzy mogą znacząco zwiększyć swoją produktywność i efektywność pracy. Zachęcamy do eksperymentowania z tymi narzędziami, aby w pełni wykorzystać potencjał Gita.