Pular para o conteúdo principal

Git Worktrees e Fluxos de Trabalho Paralelos

Avançado
What you'll learn
  • O que é um git worktree — um repositório, vários diretórios de trabalho, cada um em seu próprio branch
  • O problema exato que ele resolve: impedir que sessões paralelas do Claude colidam nos mesmos arquivos
  • Os quatro comandos para adicionar, listar e remover worktrees
  • Quando a técnica vale a pena — e as três armadilhas que mordem na hora do merge
  • Como worktrees se combinam com subagentes: paralelismo entre sessões versus dentro de uma só

Um git worktree permite que um único repositório tenha vários diretórios de trabalho, cada um com checkout em um branch diferente. Combine isso com o Claude Code e você poderá executar várias sessões em paralelo no mesmo projeto — cada uma editando seus próprios arquivos, sem colisões.

O problema que ele resolve

Se duas sessões do Claude editam o mesmo diretório de trabalho ao mesmo tempo, elas tropeçam nas mudanças uma da outra. Os worktrees dão a cada sessão seu próprio diretório e branch, de modo que o trabalho paralelo permanece isolado até você fazer o merge.

O básico

Quatro comandos sustentam todo o fluxo de trabalho: adicionar um worktree (novo diretório + novo branch), listar o que existe e remover um quando você terminar.

Guided walkthrough1 of 4
  1. A partir do seu repositório, git worktree add ../app-feature-a -b feat-a cria um novo diretório E um novo branch de uma só vez.

O fluxo de trabalho de quatro comandos

# from your repo
git worktree add ../app-feature-a -b feat-a   # new dir + new branch
git worktree add ../app-fix-123 -b fix-123
git worktree list
# when done with one:
git worktree remove ../app-feature-a

Abra uma sessão do Claude Code em cada diretório de worktree e deixe-as trabalhar de forma independente.

Quando vale a pena

  • Features/fixes paralelos que você quer fazer progredir ao mesmo tempo.
  • Uma tarefa longa em execução em um worktree enquanto você continua trabalhando em outro.
  • Experimentos arriscados isolados do seu checkout principal.

Armadilhas

Watch out
  • Fique atento ao merge de volta: os branches acabarão sendo mesclados — os conflitos aparecem nesse momento, não durante. Mantenha os worktrees focados e de vida curta.
  • Não execute recursos compartilhados com estado (um único banco de dados de dev, uma única porta) a partir de dois worktrees sem separá-los.
  • Faça a limpeza com git worktree remove para que diretórios obsoletos não se acumulem.

Worktrees versus subagentes

Dois eixos diferentes de paralelismo — eles não competem, eles se empilham.

O que ele paralelizaIsolamento
SubagentesTrabalho dentro de uma sessão (delegação)Contexto isolado
WorktreesTrabalho entre sessões no discoBranches/arquivos isolados

Eles se combinam bem: uma sessão em um worktree pode, ela mesma, gerar subagentes.

Pro tip
  • Use um worktree quando precisar de duas sessões do Claude tocando no mesmo repositório ao mesmo tempo; use um subagente quando uma sessão precisar transferir um bloco de trabalho para um contexto isolado.

Teste-se

0/4
  1. O que um git worktree oferece?
  2. Qual comando cria um novo diretório E um novo branch em uma única etapa?
  3. Quando os conflitos de merge de worktrees paralelos realmente aparecem?
  4. Como worktrees e subagentes se relacionam?
Key takeaways
  • Um git worktree = um repositório, vários diretórios de trabalho, cada um em seu próprio branch — a base para sessões paralelas do Claude livres de colisão.
  • Duas sessões em um único diretório de trabalho tropeçam uma na outra; um worktree por sessão mantém arquivos e branches isolados até você fazer o merge.
  • git worktree add ../dir -b branch cria diretório + branch; list os mostra; remove faz a limpeza.
  • Vale a pena para features/fixes paralelos, tarefas de longa duração ao lado de outro trabalho e experimentos arriscados isolados.
  • Cuidado com o merge de volta, não compartilhe recursos com estado (banco de dados, porta) entre worktrees e sempre faça a limpeza — e lembre-se de que worktrees se combinam com subagentes.

A seguir