git-advanced-workflows
Master advanced Git workflows including rebasing, cherry-picking, bisect, worktrees, and reflog to maintain clean history and recover from any situation. Use when managing complex Git histories, collaborating on feature branches, or troubleshooting repository issues.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Master advanced Git workflows including rebasing, cherry-picking, bisect, worktrees, and reflog to maintain clean history and recover from any situation. Use when managing complex Git histories, collaborating on feature branches, or troubleshooting repository issues.
How to use
Zainstaluj skill w swoim środowisku agenta, dodając go do konfiguracji narzędzi deweloperskich.
Aby wyczyścić historię commitów przed mergem, użyj interaktywnego rebasu: uruchom
git rebase -i HEAD~5(dla ostatnich 5 commitów) lubgit rebase -i $(git merge-base HEAD main)(dla wszystkich commitów na bieżącej gałęzi). W edytorze zmień operacje:pickaby zachować commit,rewordaby zmienić wiadomość,squashaby połączyć z poprzednim commitem,fixupaby połączyć bez wiadomości, lubdropaby usunąć commit.Aby przenieść konkretne commity z jednej gałęzi na drugą bez mergowania całej gałęzi, użyj cherry-picka:
git cherry-pick abc123(pojedynczy commit),git cherry-pick abc123..def456(zakres commitów), lubgit cherry-pick -e abc123(z możliwością edycji wiadomości).Aby znaleźć commit, który wprowadził bug, uruchom
git bisect start, oznacz bieżący commit jako zły (git bisect bad), wskaż znany dobry commit (git bisect good abc123), a następnie Git będzie binarnie przeszukiwać historię — odpowiadajgit bisect badlubgit bisect goodna każdym kroku aż do znalezienia problematycznego commita.Aby pracować nad wieloma funkcjami jednocześnie bez przełączania gałęzi, użyj worktrees:
git worktree add ../feature-branch feature-nametworzy osobny katalog roboczy dla nowej gałęzi, pozwalając pracować równolegle.Aby odzyskać utracone commity lub zmiany, sprawdź reflog:
git reflogpokazuje historię zmian HEAD, agit checkout abc123lubgit reset abc123przywraca utracone dane.