{
  "id": "using-git-worktrees",
  "handle": "using-git-worktrees",
  "canonicalUrl": "https://bestskillsforclaude.com/pt-br/skills/using-git-worktrees",
  "language": "pt-BR",
  "alternates": {
    "en": "https://bestskillsforclaude.com/en/skills/using-git-worktrees",
    "es": "https://bestskillsforclaude.com/es/skills/using-git-worktrees",
    "pt-BR": "https://bestskillsforclaude.com/pt-br/skills/using-git-worktrees",
    "ja": "https://bestskillsforclaude.com/ja/skills/using-git-worktrees"
  },
  "category": {
    "id": "build-and-ship",
    "name": "Construir e publicar"
  },
  "publisher": {
    "name": "Jesse Vincent (obra)",
    "url": "https://github.com/obra"
  },
  "source": "https://github.com/obra/superpowers/tree/main/skills/using-git-worktrees",
  "documentation": null,
  "licenseAsStated": "MIT",
  "runtime": "Claude Code and other supported coding agents",
  "lastReviewed": "2026-10-27",
  "headline": "Seu agente de código deveria trabalhar num git worktree separado?",
  "summary": "Para trabalho de funcionalidade, quase sempre. E quase toda esta skill trata de não criar um que você já tem.",
  "verdict": "A skill using-git-worktrees, do conjunto superpowers de Jesse Vincent, garante que o trabalho de uma funcionalidade aconteça num espaço isolado antes de a implementação começar. Primeiro ela detecta se o agente já está dentro de um worktree vinculado, pede permissão antes de criar um, prefere a ferramenta nativa do ambiente a um git worktree add manual e depois instala dependências e roda os testes, para o trabalho partir de uma base conhecida. Use sempre que um agente for escrever código ao lado de uma cópia de trabalho que importa para você.",
  "bestFor": "Branches de funcionalidade, execução de planos e qualquer sessão em que um agente possa deixar mudanças pela metade na sua cópia principal.",
  "skipIf": "Seu ambiente já dá a cada sessão um worktree próprio, ou a mudança é uma correção de uma linha que você faria na branch atual de qualquer jeito.",
  "keyTakeaways": [
    "Ela carrega no começo de um trabalho de funcionalidade que precisa de isolamento, ou antes de um plano ser executado, e avisa quando isso acontece.",
    "Detectar vem antes de criar. Ela compara git-dir com git-common-dir, se protege de submódulos e nunca cria um segundo worktree dentro daquele em que já está.",
    "Uma ferramenta nativa, que a skill descreve com nomes como EnterWorktree ou uma opção --worktree, tem prioridade sobre git worktree add, que deixaria um estado que o ambiente não enxerga.",
    "Uma base de testes falhando é relatada em vez de ignorada, para que falhas posteriores não se confundam com as que já existiam."
  ],
  "quickStart": [
    "No Claude Code, instale o superpowers com /plugin install superpowers@claude-plugins-official. A coleção é MIT, e esta skill é um único SKILL.md que precisa do git e das ferramentas do seu próprio projeto.",
    "Se você espera que ela use a alternativa com git, coloque .worktrees/ no .gitignore antes. Senão, a skill adiciona a entrada e faz commit dessa mudança na sua cópia atual.",
    "Leia o relatório da base de testes antes de deixar o trabalho seguir. Se os testes falharem antes de qualquer mudança, a skill para e pergunta, e é aí que você decide."
  ],
  "sections": [
    {
      "heading": "O que muda na prática",
      "paragraphs": [
        "Um agente que edita sua cópia principal deixa duas saídas ruins quando algo dá errado: separar as mudanças dele das suas ou jogar tudo fora. Um worktree dá ao agente diretório e branch próprios sobre o mesmo repositório, e uma tentativa fracassada passa a custar apagar uma pasta.",
        "Quase toda a skill existe para evitar isolamento duplicado. Alguns ambientes já rodam cada agente num worktree que eles mesmos gerenciam, e um agente que roda git worktree add por cima disso produz o que a skill chama de estado fantasma, um espaço de trabalho que o ambiente não vê nem consegue limpar. O passo 0 verifica primeiro, o passo 1 prefere a ferramenta nativa e o git fica por último."
      ],
      "bullets": [
        "Diretório: a preferência que você declarou, depois uma pasta .worktrees ou worktrees já existente e, por fim, uma .worktrees nova na raiz do projeto.",
        "Preparação: npm install, cargo build, pip install, poetry install ou go mod download, conforme os arquivos presentes.",
        "Base: o comando de testes do projeto, com as falhas relatadas antes de qualquer trabalho."
      ]
    },
    {
      "heading": "Onde decepciona",
      "paragraphs": [
        "A preparação é uma consulta fixa por nome de arquivo. Um pyproject.toml dispara poetry install, o que está errado para projetos geridos com outra ferramenta, e um repositório com vários manifestos na raiz recebe todos os comandos que coincidirem. Em estruturas fora do comum, conte com ter de corrigir.",
        "Num caso ela também mexe no seu repositório por conta própria: se o diretório de worktrees não estiver ignorado, ela o adiciona ao .gitignore e faz commit. É o padrão seguro para o repositório e, mesmo assim, um commit que você não escreveu, então crie a entrada você mesmo se o histórico importa."
      ]
    }
  ],
  "faq": [
    {
      "question": "O que é um git worktree?",
      "answer": "Um segundo diretório de trabalho ligado ao mesmo repositório, com a própria branch, para que duas frentes de trabalho não dividam arquivos no disco."
    },
    {
      "question": "Ela cria um worktree sem perguntar?",
      "answer": "Não. Numa cópia normal ela pergunta antes, a menos que suas instruções já declarem uma preferência, e se você recusar ela trabalha ali mesmo."
    },
    {
      "question": "Quais skills do superpowers dependem dela?",
      "answer": "executing-plans e subagent-driven-development chamam essa skill para criar um espaço de trabalho, ou conferir o existente, antes de começar."
    }
  ],
  "sources": [
    {
      "label": "obra/superpowers no GitHub",
      "url": "https://github.com/obra/superpowers",
      "kind": "repository"
    },
    {
      "label": "obra/superpowers, pasta da skill using-git-worktrees",
      "url": "https://github.com/obra/superpowers/tree/main/skills/using-git-worktrees",
      "kind": "documentation"
    },
    {
      "label": "README do obra/superpowers, instalação e fluxo de trabalho",
      "url": "https://github.com/obra/superpowers/blob/main/README.md",
      "kind": "documentation"
    },
    {
      "label": "Licença do obra/superpowers (MIT)",
      "url": "https://github.com/obra/superpowers/blob/main/LICENSE",
      "kind": "license"
    }
  ],
  "machineReadable": {
    "markdown": "https://bestskillsforclaude.com/pt-br/skills/using-git-worktrees/content.md",
    "json": "https://bestskillsforclaude.com/pt-br/skills/using-git-worktrees/skill.json"
  },
  "disclosure": "Editorial desk review based on the publisher's own repository. Not a security audit, a benchmark or a guarantee of maintenance."
}