# Armazenamento do VS Code no Windows: caches, extensões e estado persistente

O VS Code acumula extensões, caches, logs, estado de workspace e dados que as extensões possuem. Apagar a pasta `Code` inteira pode redefinir as configurações junto com a remoção do cache. Separe o conteúdo que dá para reproduzir do ambiente de desenvolvimento que você precisa manter. Para uma edição lenta, identifique a extensão que está trabalhando antes de tratar a limpeza de armazenamento como o remédio.

## Distinga arquivos de programa, extensões e dados do usuário

Numa instalação padrão do Windows, os caminhos do programa dependem do instalador, as extensões ficam por padrão em `%USERPROFILE%\.vscode\extensions`, e os dados do usuário em geral ficam em `%APPDATA%\Code`. Insiders, Modo portátil e caminhos personalizados de `--user-data-dir` ou `--extensions-dir` precisam de conferências à parte.

| Conteúdo | Para que serve | Decisão de retenção |
| --- | --- | --- |
| Extensões instaladas | Edição, depuração e recursos de linguagem | Mantenha as ferramentas ativas e as fontes de instalação delas |
| Configurações, atalhos e snippets | O seu fluxo de trabalho configurado | Exporte e verifique a configuração recuperável |
| Estado de workspace e de extensão | Estado do projeto e dados persistentes da extensão | Mantenha conteúdo incerto; siga as instruções de exportação da extensão |
| Caches de download/runtime e logs | Downloads reutilizados, resultados gerados e diagnóstico | Proteja conteúdo ativo e logs necessários para investigar |

A [referência de extensões](https://code.visualstudio.com/docs/configure/extensions/extension-marketplace) lista os padrões, e a [referência de CLI](https://code.visualstudio.com/docs/configure/command-line) descreve diretórios personalizados e perfis. O diretório `.vscode` de um projeto é outro escopo, em geral com a configuração do projeto. O nome parecido não o torna a pasta de extensões do usuário.

## Anote a configuração atual

Use a CLI da instalação que você identificou. Estes comandos listam extensões com versões e informam o diagnóstico do processo sem remover arquivos.

```powershell
code --list-extensions --show-versions
code --status
```

A lista de extensões é um inventário, não uma cópia dos binários das extensões, do estado da conta ou dos dados de trabalho. Um perfil agrupa configurações e seleções de extensão para um fluxo de trabalho; é mais do que um arquivo `settings.json`. Com vários perfis, inspecione o perfil atual e use a opção de perfil documentada quando precisar. Uma lista padrão não é um inventário de todos os perfis.

Exporte configurações, atalhos, snippets e seleções de extensão relevantes pelos [Perfis](https://code.visualstudio.com/docs/configure/profiles). Inspecione a exportação. Arquivos de projeto e conteúdo que a extensão possui ainda precisam dos próprios backups.

## Desative antes de decidir desinstalar

Para um atraso reproduzível num projeto, escolha Desabilitar (Workspace) para uma extensão suspeita, reinicie as extensões quando for pedido e repita a mesma ação. Mude uma extensão de cada vez e compare o diagnóstico com a capacidade de resposta. Desinstale pelo menu de gerenciamento dela quando decidir que não é mais necessária.

Desabilitar mantém os arquivos instalados, então testa o comportamento sem recuperar o espaço da instalação. O [gerenciamento de extensões](https://code.visualstudio.com/docs/configure/extensions/extension-marketplace) distingue desabilitar no workspace ou globalmente, desinstalar e habilitar. Confira se a depuração, o suporte de linguagem ou a formatação ainda dependem da extensão.

Ambientes locais do Windows, do WSL e de contêiner de desenvolvimento podem ter instalações de extensão separadas. Inspecione o local na vista Extensões; remover uma cópia local do Windows não estabelece a remoção remota.

<figure class="blog-diagram">
  <picture>
    <source media="(max-width: 900px)" srcset="/img/blog/windows-vscode-storage-windows-en-mobile.webp" type="image/webp" width="768" height="1180">
    <img src="/img/blog/windows-vscode-storage-windows-en.webp" width="1360" height="454" loading="lazy" alt="Os dados do VS Code têm donos diferentes">
  </picture>
  <figcaption>O estado da extensão pode conter trabalho retido; desabilitar uma extensão testa o comportamento e mantém os arquivos da instalação.</figcaption>
</figure>

## Estado persistente de extensão não é cache genérico

A [API ExtensionContext](https://code.visualstudio.com/api/references/vscode-api#ExtensionContext) permite que extensões guardem estado global e específico do workspace. A extensão determina o significado: índices, histórico, sessões ou outro conteúdo retido. Investigue o dono de entradas grandes em `User\globalStorage` ou `User\workspaceStorage`, em vez de limpar os nomes sem distinção.

O [guia de desinstalação limpa](https://code.visualstudio.com/docs/setup/uninstall) trata remover dados do usuário como uma redefinição. Isso muda o ambiente e não deve ser apresentado como limpeza rotineira de cache. Exporte e verifique a recuperação antes de uma redefinição intencional, e confira outras instalações que possam compartilhar os dados.

## Confira a sincronização e os perfis quando as extensões reaparecem

A [Sincronização de Configurações](https://code.visualstudio.com/docs/configure/settings-sync) pode sincronizar inventários de extensão, habilitação e dados selecionados de perfil. Inspecione os dados sincronizados e o perfil ativo quando uma extensão reaparece depois de uma mesclagem ou do uso de outra máquina. A sincronização não cobre toda extensão remota nem todo arquivo privado de extensão, então ligá-la não é um backup completo do ambiente de desenvolvimento.

O Mole para Windows reconhece locais específicos do VS Code, como Cache, CachedData e caches de download de extensão, com proteção de processo nos caches de runtime relevantes. Esse escopo não autoriza remover a pasta inteira de dados do usuário. Salve e saia do editor normalmente, retenha os logs de diagnóstico de que você precisa, depois reabra o projeto original. Confira configurações, depuração, terminais e as extensões necessárias antes de repetir o build original ou a tarefa de edição.

Para caches de pacotes de linguagem, leia [caches versus dependências de projeto](/pt-br/windows/blog/windows-developer-caches). Para ambientes de contêiner e volumes, leia o [guia de armazenamento do Docker e do WSL](/pt-br/windows/blog/docker-wsl-disk-space-windows).


Canonical: https://mole.fit/pt-br/windows/blog/vscode-storage-windows
