Worktrees e desenvolvimento paralelo
Trabalhe em várias features ao mesmo tempo sem conflitos
⏱ Estim. ~5 min
01 · Ler
E se você pudesse trabalhar em duas features ao mesmo tempo sem que uma pisasse nos arquivos da outra? Normalmente, um projeto tem um conjunto de arquivos por branch. Você está no meio do auth quando entra um bug crítico — aí precisa dar stash, trocar de branch e perde o ritmo.
Worktrees do Git resolvem isso. Um worktree é um diretório de trabalho separado que compartilha o mesmo histórico git do projeto principal. Cada worktree tem branch e arquivos próprios. O Claude Code tem suporte embutido a worktrees — você sobe um espaço de trabalho isolado com uma flag só.
💡 Imagine assimImagine ter duas mesas em vez de uma. Cada mesa tem a própria cópia dos documentos em que você está trabalhando, mas as duas se conectam ao mesmo arquivo (o histórico git). Você pode trabalhar numa feature na mesa 1 e corrigir um bug na mesa 2, sem nunca embaralhar os papéis.
Pontos-chave
- Worktrees são diretórios de trabalho separados que compartilham o mesmo repo git
- Cada worktree tem branch e arquivos próprios
- Sem stash, sem trocar de branch, sem perder o ritmo
- O Claude Code cria worktrees automaticamente com --worktree
02 · Exemplo de código
Use a flag --worktree para criar um worktree. Cada um tem branch e diretório próprios.
Criando um 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
O que acontece nos bastidores
Worktree location: .claude/worktrees/feature-auth/
Branch created: worktree-feature-auth
Files: Full copy of your project
Git history: Shared with main repo
Cada worktree fica em .claude/worktrees/ com diretório próprio e branch git própria. Duas sessions do Claude podem editar arquivos ao mesmo tempo sem conflito. Quando você termina, worktrees sem alterações são limpos automaticamente.
03 · Ler
Worktrees são especialmente poderosos para sessions paralelas do Claude. Um fluxo típico:
1. Você está implementando uma feature no diretório principal 2. Chega um report de bug — claude --worktree bugfix-123 3. A session de bugfix trabalha de forma independente na própria cópia 4. Corrige, dá merge da branch de bugfix de volta no main 5. Você continua o trabalho na feature sem perder uma batida
Você também pode usar worktrees dentro de subagents. Adicione isolation: worktree ao frontmatter do SKILL.md de um subagent para ele trabalhar automaticamente no próprio worktree — perfeito para tarefas que precisam editar arquivos sem afetar seu diretório de trabalho principal.
Pontos-chave
- Rode várias sessions do Claude em paralelo, cada uma no próprio worktree
- Dê merge das branches de worktree de volta quando terminar
- Subagents podem usar worktrees com isolation: worktree
- Adicione .claude/worktrees/ ao .gitignore
04 · Ler
Para mudanças realmente em larga escala — renomear uma função em 100 arquivos, migrar uma API — o Claude Code oferece o comando /batch. Ele quebra sua tarefa em unidades independentes, gera um subagent para cada uma, e cada subagent trabalha no próprio worktree.
Cada subagent cria um draft pull request para a parte dele. Você revisa, dá merge nos bons e itera nos outros. É assim que profissionais lidam com grandes refatorações — dividindo em blocos independentes e revisáveis.
Pontos-chave
- /batch quebra grandes tarefas em unidades independentes
- Cada unidade vai para o próprio worktree com o próprio subagent
- Cada uma cria um draft PR para revisão
- Perfeito para refatorações e migrações em larga escala
05 · Quiz
O que acontece quando uma session de worktree do Claude termina sem alterações sem commit?
- O worktree é limpo automaticamente
- O worktree fica para sempre até você apagar manualmente
- O Claude pede para você fazer commit antes de fechar
- O worktree é movido para um diretório de backup
06 · Classificar arrastando
Coloque esses passos de um fluxo paralelo com worktrees na ordem correta.
(Esta seção é interativa — ative o JavaScript para usar.)
Outras lições deste capítulo
⚠ A experiência interativa completa precisa de JavaScript. Ative-o e recarregue a página.
※ Este é um projeto educacional independente — não é um produto oficial da Anthropic. Claude™ é uma marca registrada da Anthropic, PBC.