Worktree e sviluppo parallelo
Lavora su più funzionalità contemporaneamente senza conflitti
⏱ Stima ~5 min
01 · Leggi
E se potessi lavorare su due funzionalità contemporaneamente senza che si calpestino i file a vicenda? Di solito hai un branch e un insieme di file per progetto. Se arriva un bug critico mentre sei a metà di un'implementazione auth, devi fare stash del lavoro, cambiare branch e perdere il ritmo.
Git worktree risolve questo problema. Un worktree è una directory di lavoro separata che condivide la stessa storia git del tuo progetto principale. Ogni worktree ha il proprio branch e i propri file. Claude Code ha supporto integrato per i worktree — con un solo flag puoi avviare uno spazio di lavoro isolato.
💡 Immagina cosìImmagina di avere due scrivanie in ufficio invece di una. Ogni scrivania ha la propria copia dei documenti in lavorazione, ma entrambe sono collegate allo stesso archivio (la storia di git). Puoi lavorare sulla funzionalità alla scrivania 1 e correggere il bug alla scrivania 2, senza mai spostare carta da una all'altra.
Punti chiave
- I worktree sono directory di lavoro separate che condividono lo stesso repo git
- Ogni worktree ha il proprio branch e i propri file
- Niente stash, niente cambio di branch, niente perdita di ritmo
- Claude Code crea automaticamente i worktree con --worktree
02 · Esempio di codice
Usa il flag --worktree per creare un worktree. Ognuno ha il proprio branch e la propria directory.
Creare un worktree
# Start a Claude session in an isolated worktree
claude --worktree feature-auth
# Start another session for a bug fix
claude --worktree bugfix-login
# Auto-generate a random worktree name
claude --worktree
Cosa succede dietro le quinte
Worktree location: .claude/worktrees/feature-auth/
Branch created: worktree-feature-auth
Files: Full copy of your project
Git history: Shared with main repo
Ogni worktree ha la propria directory dentro .claude/worktrees/ e il proprio branch git. Due sessioni Claude possono modificare file contemporaneamente senza conflitti. Al termine, i worktree senza modifiche vengono rimossi automaticamente.
03 · Leggi
I worktree sono particolarmente potenti per le sessioni Claude parallele. Ecco un flusso tipico:
1. Stai implementando una funzionalità nella directory principale 2. Arriva la segnalazione di un bug — claude --worktree bugfix-123 3. La sessione bugfix lavora in modo indipendente sulla propria copia 4. Bug risolto, fai il merge del branch bugfix su main 5. Riprendi il lavoro sulla funzionalità senza aver perso il filo
Puoi anche usare i worktree all'interno di un subagent. Aggiungi isolation: worktree nel frontmatter del SKILL.md del subagent per farlo lavorare automaticamente nel proprio worktree — ideale per task che devono modificare file senza toccare la tua directory di lavoro principale.
Punti chiave
- Esegui più sessioni Claude in parallelo, ognuna nel proprio worktree
- Al termine, fai il merge del branch worktree nel principale
- I subagent possono usare i worktree con isolation: worktree
- Aggiungi .claude/worktrees/ al .gitignore
04 · Leggi
Per modifiche davvero su larga scala — rinominare una funzione in 100 file o migrare un'API — Claude Code mette a disposizione il comando /batch. Divide il task in unità indipendenti, crea un subagent per ciascuna e ognuno lavora nel proprio worktree.
Ogni subagent crea una draft pull request per la propria parte. Tu la rivedi, fai il merge di quelle buone e itieri sulle altre. È così che i professionisti gestiscono i refactoring su larga scala — dividendoli in blocchi indipendenti e revisionabili.
Punti chiave
- /batch divide i task grandi in unità indipendenti
- Ogni unità gira nel proprio worktree con il proprio subagent
- Ogni unità crea una draft PR per la revisione
- Ideale per refactoring e migrazioni su larga scala
05 · Quiz
Cosa succede quando una sessione Claude in un worktree termina senza modifiche non ancora in commit?
- Il worktree viene rimosso automaticamente
- Il worktree rimane per sempre finché non lo elimini manualmente
- Claude ti chiede di fare commit prima di chiudere
- Il worktree viene spostato in una directory di backup
06 · Trascina per ordinare
Metti questi passaggi del flusso parallelo con worktree nell'ordine corretto.
(Questa sezione è interattiva — attiva JavaScript per usarla.)
Altre lezioni di questo capitolo
⚠ L'esperienza interattiva completa richiede JavaScript. Attivalo e ricarica la pagina.
※ Questo è un progetto educativo indipendente — non è un prodotto ufficiale di Anthropic. Claude™ è un marchio di Anthropic, PBC.