Git jest potezny, ale ma reputacje skomplikowanego narzedzia. Zawiera setki polecen i flag, ale wiekszosc programistow polega tylko na malym ich zestawie kazdego dnia. Jesli nauczysz sie osmiu polecen z tego przewodnika, mozesz pewnie pracowac w prawie kazdym projekcie Git bez koniecznosci zapamietywania reszty.
8 niezbednych polecen
1. git status
Uzywaj tego do sprawdzania stanu workspace. Pokazuje ktore pliki sie zmienily, ktore pliki sa staged, na ktorej jestes galezi i czy twoja galaz jest do przodu czy do tylu wzgledem remote. To polecenie to twoj glowny dashboard.
git status2. git add .
To staguje twoje zmiany zeby byly gotowe do commitowania. Kropka oznacza "dodaj wszystko co sie zmienilo". Mozesz tez stagowac pojedyncze pliki jesli wolisz byc bardziej selektywny.
git add .
# Lub staguj konkretne pliki:
git add src/index.js3. git commit -m ""
Commit tworzy snapshot twojej pracy. Wiadomosc w cudzyslowach powinna opisywac dlaczego zmiana zostala wprowadzona. Dobre wiadomosci commitow oszczedzaja czas pozniej przy przegladaniu historii lub debugowaniu problemow.
git commit -m "Add user authentication flow"4. git pull --rebase
To aktualizuje twoja lokalna galaz najnowszymi zmianami z remote. Flaga --rebase utrzymuje historie commitow czysta przez ponowne odtworzenie twoich commitow na szczycie najnowszych commitow upstream. To unika niepotrzebnych merge commitow i redukuje szum konfliktow.
git pull --rebaseDlaczego rebase? Bez tego dostajesz merge commity za kazdym razem gdy robisz pull, zasmiecajac historie wiadomosciami "Merge branch 'main' into main".
5. git push
To uploaduje twoje commity na GitHub, GitLab lub kazde inne remote. Pushowanie zapisuje twoja prace na serwerze, tworzy jej backup i udostepnia ja dla pull requestow i wspolpracy zespolowej.
git push
# Pierwszy push na nowej galezi:
git push -u origin feature/my-branch6. git switch
To nowoczesny sposob na przelaczanie na inna galaz. Jest prosty, jasny i nie moze przypadkowo zmodyfikowac twoich plikow.
git switch main
git switch feature/loginJesli galaz jeszcze nie istnieje, utworz ja:
git switch -c new-branch7. git merge
To laczy okreslona galaz z galazia na ktorej obecnie jestes. Poprawna kolejnosc to najpierw przelacz sie na galaz ktora chcesz zaktualizowac, potem merge inna galaz do niej.
git switch main
git merge feature/login8. git checkout -
To zwraca cie do poprzedniej galezi wraz z jej stanem roboczym. To niezwykle uzyteczny skrot i jedno z niewielu nowoczesnych uzyc git checkout ktore jest nadal zalecane.
git checkout -
# Odpowiednik "cd -" dla galeziSzybka referencja
| Polecenie | Co robi |
|---|---|
git status |
Pokaz stan workspace |
git add . |
Staguj wszystkie zmiany |
git commit -m "msg" |
Utworz commit |
git pull --rebase |
Zaktualizuj z remote (czysta historia) |
git push |
Uploaduj commity |
git switch <branch> |
Zmien galaz |
git merge <branch> |
Polacz galaz z aktualna |
git checkout - |
Wroc do poprzedniej galezi |
Nowoczesny Git: Switch vs Checkout
Od Git 2.23 sprawy staly sie jeszcze prostsze. Git wprowadzil dwa nowe polecenia, git switch i git restore, zeby rozdzielic przelaczanie galezi od przywracania plikow. Ta zmiana sprawia ze intencja kazdego polecenia jest jasna, szczegolnie dla nowych programistow. Stare polecenie git checkout bylo przeladowane i probowalo robic zbyt wiele niepowiazanych rzeczy.
Oto prosta regula dla nowoczesnego uzycia Git:
| Polecenie | Cel |
|---|---|
git switch |
Zmienia galezi |
git checkout - |
Wraca do poprzedniej galezi |
git checkout |
NIE powinno byc uzywane do przelaczania galezi (poza skrotem z kreska) |
Podsumowanie
Jesli opanujesz te osiem polecen, bedziesz skuteczny w prawie kazdym codziennym workflow Git bez zadnej zaawansowanej wiedzy. Kluczowe spostrzezenie to uzywanie git switch dla galezi i rezerwowanie git checkout tylko dla skrotu z kreska.
Dla wszystkiego innego - rebasowania, cherry-pickingu, bisectingu - mozesz to sprawdzic gdy tego potrzebujesz. Te osiem polecen pokrywa 95% tego co robisz kazdego dnia.
Fred
AUTHORFull-stack developer with 10+ years building production applications. I write about cloud deployment, DevOps, and modern web development from real-world experience.
Need a developer who gets it?
POC builds, vibe-coded fixes, and real engineering. Let's talk.
Hire Me →
