Přejít k navigační liště

Zdroják » Webový vývoj » Git Worktree + Claude Code: paralelní vývoj a AI agenti ve více větvích najednou

Git Worktree + Claude Code: paralelní vývoj a AI agenti ve více větvích najednou

Články Webový vývoj

Git worktree posouvá práci s větvemi na úplně jinou úroveň – místo neustálého přepínání a stashování nabízí paralelní pracovní prostředí nad jedním repozitářem. V kombinaci s nástroji jako Claude Code navíc otevírá dveře k běhu více AI agentů současně, každý izolovaně ve své větvi, bez kolizí a zbytečné režie.

Nálepky:

Spousta vývojářů přepíná větve jako na běžícím pásu – git stash, checkout, práce, checkout zpátky. Git worktree tohle mění: víc pracovních kopií, jeden repozitář, žádné kopírování. A když do toho přidáte Claude Code, dostanete paralelní AI agenty, kteří pracují nezávisle na sobě.

Co je Git Worktree a proč ne clone?

Klasický přístup: máte repozitář, pracujete na feature větvi, přijde hotfix, musíte přepnout. git stash, git checkout main, opravíte, zpět, git stash pop, pokud máte štěstí nic nejde do konfliktu. Znáte to.

Git worktree to řeší jinak. Místo přepínání větví v jedné složce umožňuje mít více pracovních kopií najednou – každou ve vlastní složce, každou s vlastní větví, přičemž všechny sdílejí jedinou .git databázi.

        .git/  (sdílená databáze)
       /      \         \
my-project/  proj-agent1/  proj-agent2/
  (main)     (feature-auth) (feature-dashboard)

Klíčový rozdíl oproti git clone: worktree neklonuje historii, pouze sdílí existující .git. Netrvá to minuty, nezabírá zbytečné místo na disku a commity jsou okamžitě viditelné ze všech worktree, tedy žádná synchronizace, žádný push/pull mezi kopiemi.

Kdy worktree opravdu svítí: hotfix uprostřed feature vývoje, code review jiné větve bez stashování, a jak uvidíme dál, spouštění AI agentů paralelně, každého v jeho vlastní větvi.

Základní příkazy v praxi

Vytvoření worktree s novou větví

# git worktree add <cesta> -b <nová-větev>
git worktree add ../my-project-feature -b feature-authCode language: HTML, XML (xml)

Vytvoří složku ../my-project-feature s checkoutnutou novou větví feature-auth. Můžete rovnou cd a pracovat.

Napojení na existující větev

git worktree add ../my-project-bugfix bugfix/login-issue

Přehled a úklid

# Seznam všech aktivních worktree
git worktree list

# Smazání (složka musí být prázdná nebo použít --force)
git worktree remove ../my-project-featureCode language: PHP (php)

Jedna větev = jeden worktree. Nemůžete mít stejnou větev checkoutnutou ve dvou worktree zároveň. Git to odmítne s chybou. Vždy nová větev pro každý worktree.

Spuštění Claude Code ve worktree

Tady přichází hlavní use-case. Claude Code umí pracovat v libovolné složce. Worktree mu dá izolované prostředí (vlastní větev, vlastní soubory), zatímco vy pracujete vedle v jiném worktree bez jakéhokoliv rušení.

# 1. Vytvoříme worktree pro agenta
git worktree add ../proj-agent -b feature-new-api

# 2. Přejdeme do něj a spustíme Claude Code interaktivně
cd ../proj-agent
claude

# Nebo rovnou s promptem (headless / neinteraktivní režim)
claude -p "Implementuj REST API endpoint pro /users"Code language: PHP (php)

Agent teď vidí přesně ten kód, který je v jeho větvi. Váš main nebo jiná feature větev se ho netýká. Pokud agent přepíše půlku souborů a výsledek se vám nelíbí – git worktree remove a je po problému.

Paralelní agenti: kompletní workflow

Tohle je místo, kde se worktree + Claude Code stávají skutečně silnou kombinací. Dva úkoly, dva agenti, dva terminály, které probíhají paralelně.

# Vytvoříme dva worktree pro dva paralelní úkoly
git worktree add ../proj-agent1 -b feature-auth
git worktree add ../proj-agent2 -b feature-dashboard

# Terminál 1 — agent pro autentizaci
cd ../proj-agent1
claude -p "Přidej JWT autentizaci do Express serveru"

# Terminál 2 — agent pro dashboard (souběžně)
cd ../proj-agent2
claude -p "Vytvoř React dashboard s grafy prodejů"Code language: PHP (php)

Oba agenti jedou najednou, každý v izolované větvi, každý s přístupem ke sdílené historii. Jakmile jsou hotovi, code review a merge:

 Zpátky do hlavního projektu
cd ../my-project

# Review + merge obou větví
git merge feature-auth
git merge feature-dashboard

# Úklid worktree
git worktree remove ../proj-agent1
git worktree remove ../proj-agent2Code language: PHP (php)

Tipy, nástrahy a edge cases

  • Sdílený stash a reflog. Stash a reflog jsou společné pro všechny worktree. git stash pop v jednom worktree aplikuje změny ze stacku bez ohledu na to, ve které větvi stash vznikl, pozor na to.
  • Submoduly. Pokud repozitář používá submoduly, po vytvoření worktree je třeba spustit git submodule update --init, jinak budou chybět.
  • IDE a souborové watchery. Některá IDE (VS Code, IntelliJ) si s více worktree v sourozených složkách rozumí dobře – každý worktree otevřete jako samostatné okno. Jiná mohou mít problémy s detekcí změn.
  • Pojmenování složek. Konvence ../projekt-nazev-vetve funguje dobře, ale složky mimo repozitář mohou splést CI/CD skripty. Klidně dávejte worktree do podsložky jako .worktrees/feature-auth.

Tip pro Claude Code: Headless režim (claude -p "...") je ideální pro skriptování – můžete spouštět agenty z Makefile, shell skriptů nebo CI pipeliny a nechat je pracovat bez interakce.

Git worktree je funkce, která v Gitu existuje už roky, ale velká spousta vývojářů ji nikdy nepoužila. Kombinace s AI agenty jako Claude Code ji ale povýšila z „užitečné vychytávky“ na skutečnou součást workflow. Zkuste to na příštím větším feature vývoji, výsledek vás překvapí.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů

Proč vám model napíše Python, i když jste si řekli o Rust

AI
Komentáře: 0
Výkonnostní propast mezi Pythonem a ostatními jazyky se za poslední rok a půl skoro zavřela. Dnešní modely zvládají Rust i Go srovnatelně dobře. Když jim ale volbu necháte, sáhnou stejně po Pythonu. A u knihoven je to ještě výraznější: mezi funkčně srovnatelnými balíčky je až 84procentní rozdíl v kvalitě generovaného kódu. Proč to tak je a co s tím.

WP2Shell: Kritická hrozba pro samotné jádro WordPressu. Útočníci mohou získat kontrolu nad webem

Zranitelnost ve WordPressu není žádná novinka. Kdo provozuje weby postavené na této platformě, ví, že bezpečnostní záplaty chodí prakticky pořád. O to větší pozornost by měla vzbudit chyba, u které nic z toho neplatí. A přesně takový je případ zranitelnosti, která dostala přezdívku wp2shell. potřeb. Zranitelný kontaktní formulář, děravý e-shopový plugin, opomenutá kontrola oprávnění v nějaké obskurní rozšiřující knihovně – to je denní chleba každého, kdo sleduje bezpečnostní feedy. Zpráva „nová chyba ve WordPress pluginu“ má tak nízkou informační hodnotu, že ji většina lidí přejde bez mrknutí oka.

Mýtus jedné aplikace: proč PWA nenahradí vývoj pro každou platformu

PWA mohou webu přidat ikonu na ploše, fungování bez připojení, notifikace a některé systémové funkce. Nejsou ale cestou k jednomu klientu pro všechny platformy. Vyplatí se tam, kde se lidé k webu vracejí a ocení okamžitý vstup z odkazu. Jakmile aplikace musí spolehlivě běžet na pozadí nebo fungovat stejně na každém zařízení, bývá vhodnější nativní řešení.