Zaawansowany Git — rebase, internals, monorepo, hooks i strategie branching
Trzydniowe szkolenie zaawansowany Git — rebase/cherry-pick, Git internals (objects, packfiles), submoduły/subtree, hooks, monorepo, strategie branching (trunk-based, GitFlow), naprawa repozytoriów, Git LFS.
„Umiem Git” = umiem commit, push i merge. Zaawansowany Git to zupełnie inny poziom
Większość deweloperów zna 10% Git: commit, branch, merge, pull request. A Git ma: interactive rebase (porządkowanie historii przed merge), bisect (automatyczne znajdowanie commita, który złamał test), reflog (odzyskiwanie „utraconych” commitów po reset —hard), cherry-pick (przenoszenie pojedynczych commitów między branchami), hooks (automatyczny lint i format przed commitem), submoduły i monorepo (zarządzanie złożonymi strukturami). Bez tej wiedzy — tracisz godziny na problemy, które Git rozwiązuje w sekundach.
Trzydniowe szkolenie: od Git internals (object model, packfiles — zrozumiesz JAK Git działa) i zaawansowanych operacji (interactive rebase, cherry-pick, bisect, reflog, filter-repo), przez struktury (submoduły, subtree, monorepo, Git LFS) i strategie branching (trunk-based vs GitFlow vs GitHub Flow), po hooks (pre-commit, automatyzacja, CI/CD), rozwiązywanie problemów (rerere, naprawa repozytoriów) i migrację (SVN/TFS to Git).
Dla kogo jest to szkolenie?
Dla deweloperów i DevOps, którzy chcą opanować Git na poziomie eksperta. Szczególnie gdy:
- Używasz Git codziennie ale rebase Cię przeraża — szkolenie demistyfikuje rebase, reflog i recovery
- Zarządzasz monorepo lub wieloma repozytoriami — potrzebujesz wiedzy o sparse checkout, submodułach i CODEOWNERS
- Definiujesz workflow Git w zespole — potrzebujesz argumentów za trunk-based vs GitFlow i narzędzi (hooks, automatyzacja)
Trzy dni: od internals do migracji
Dzień 1: Internals i historia — object model (blob, tree, commit), rebase (interactive, onto), cherry-pick, reflog (recovery), bisect (automatyczne szukanie regresji), filter-repo (rewrite historii).
Dzień 2: Struktury i strategie — submoduły i subtree, monorepo (sparse checkout, partial clone, CODEOWNERS), Git LFS, strategie branching (GitFlow, GitHub Flow, trunk-based), release strategies (SemVer, hotfix).
Dzień 3: Automatyzacja i operacje — hooks (pre-commit, commit-msg, husky/lefthook), zaawansowane konflikty (rerere, merge strategies), naprawa repozytoriów (corrupt objects, recovery), optymalizacja (gc, commit-graph), migracja (SVN/TFS to Git).
Z ponad 2500 szkoleń w ofercie i oceną 4.8/5, EITT jest zaufanym partnerem w rozwoju kompetencji. Skontaktuj się z nami — organizujemy szkolenia Git zamknięte dla zespołów deweloperskich i DevOps.
Korzyści
- Rozumieć Git internals — object model, packfiles, reflog — i wykorzystywać to do rozwiązywania problemów
- Stosować zaawansowane operacje — interactive rebase, cherry-pick, bisect, filter-repo
- Zarządzać złożonymi strukturami — submoduły, subtree, monorepo (sparse checkout, CODEOWNERS)
- Wdrażać Git hooks i automatyzację — pre-commit, commit-msg, integracja z CI/CD
- Wybierać i wdrażać strategię branching — trunk-based vs GitFlow vs GitHub Flow
- Naprawiać i optymalizować repozytoria — recovery, gc tuning, commit-graph, migracja
Dla kogo jest to szkolenie?
Wymagania wstępne
- Min. 1 rok codziennej pracy z Git — commit, branch, merge, pull request
- Znajomość podstawowych operacji — clone, push, pull, stash, diff, log
- Doświadczenie z rozwiązywaniem merge conflicts
- Znajomość wiersza poleceń (bash/PowerShell)
Program szkolenia
Dzień 1: Git internals i zaawansowane operacje na historii
- Git internals — object model (blob, tree, commit, tag), SHA-1, packfiles, gc, fsck
- Rebase — interactive rebase (squash, fixup, reword, edit), rebase vs merge, rebase onto
- Cherry-pick — przenoszenie commitów między branchami, cherry-pick ranges, conflict resolution
- Reflog — odzyskiwanie utraconych commitów, reflog expire, ratowanie po złym rebase/reset
- Bisect — binarne wyszukiwanie regresji, bisect run (automatyczny), bisect z testami
- Rewrite historii — filter-repo (usuwanie plików, zmiana autorów), BFG Repo-Cleaner
Dzień 2: Submoduły, monorepo i strategie branching
- Submoduły — dodawanie, aktualizacja, pułapki (detached HEAD), alternatywy
- Subtree — merge vs split, porównanie z submodułami, kiedy który
- Monorepo management — sparse checkout, partial clone, path-based ownership (CODEOWNERS)
- Git LFS — duże pliki binarne, konfiguracja, storage, migracja istniejącego repo
- Strategie branching — GitFlow, GitHub Flow, trunk-based development — porównanie, trade-offs
- Release strategies — tagging (SemVer), release branches, hotfix workflow
Dzień 3: Hooks, automatyzacja i rozwiązywanie problemów
- Git hooks — pre-commit (lint, format), commit-msg (conventional commits), pre-push, server-side hooks
- Automatyzacja — husky, lefthook, pre-commit framework, integracja z CI/CD
- Zaawansowane rozwiązywanie konfliktów — rerere (reuse recorded resolution), merge strategies (ours, theirs, patience)
- Naprawianie repozytoriów — uszkodzony index, corrupt objects, orphaned commits, recovery procedures
- Optymalizacja — gc tuning, repack, commit-graph, multi-pack-index, shallow clone
- Migracja — SVN-to-Git, TFS-to-Git, merge dwóch repozytoriów z zachowaniem historii
Formy realizacji
Online
- Wygoda uczestnictwa z dowolnego miejsca
- Interaktywne sesje na żywo z trenerem
- Materiały dostępne przez 30 dni
- Brak kosztów dojazdu
Stacjonarnie
- Bezpośredni kontakt z trenerem i grupą
- Intensywne warsztaty praktyczne
- Networking z innymi uczestnikami
- Pełne skupienie na nauce
Najczęściej zadawane pytania
Czy to szkolenie z GitHub/GitLab?
Nie — to szkolenie z GIT (narzędzie). GitHub/GitLab to platformy hostingowe. Omawiamy Git jako system kontroli wersji: internals, rebase, hooks, monorepo. Umiejętności działają identycznie niezależnie od platformy (GitHub, GitLab, Bitbucket, self-hosted).
Czy rebase jest bezpieczny?
Tak — jeśli wiesz co robisz. Interactive rebase to najpotężniejsze narzędzie Git: porządkuje historię, łączy commity, poprawia wiadomości. Szkolenie uczy kiedy rebase (prywatny branch), kiedy merge (publiczny branch), i jak odzyskać dane z reflog po błędzie.
Monorepo czy multi-repo?
Omawiamy oba podejścia z trade-offs. Monorepo (Google, Meta) = jeden repo, sparse checkout, CODEOWNERS. Multi-repo = osobne repo per serwis, submoduły/subtree. Wybór zależy od struktury zespołu i narzędzi CI/CD.
W jakim formacie i jak długo trwa szkolenie?
Szkolenie trwa 3 dni (9:00-16:00), dostępne online i stacjonarnie. Warsztaty z operacjami na repozytorium — rebase, bisect, hooks, recovery.
Czy po szkoleniu otrzymam certyfikat?
Tak, każdy uczestnik otrzymuje imienny certyfikat ukończenia szkolenia wydany przez EITT.
Poproś o ofertę
Możliwości dofinansowania
Sprawdź możliwości dofinansowania dla Twojej firmy
Baza Usług Rozwojowych
Dofinansowanie do 80% dla MŚP ze środków EFS
Sprawdź dostępnośćKrajowy Fundusz Szkoleniowy
Dofinansowanie do 100% dla pracodawców
Dowiedz się więcejZaufali nam
Szkolimy zespoły największych polskich firm
Zainteresowany tym szkoleniem?
Skontaktuj się z nami - przygotujemy ofertę dopasowaną do potrzeb Twojego zespołu.