Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Configurar codespaces para seu projeto

Você pode definir uma configuração-padrão para cada novo codespace do seu repositório para garantir que os colaboradores tenham todas as ferramentas e configurações de que precisam em seu ambiente de desenvolvimento on-line.

As pessoas com permissões de gravação em um repositório podem criar ou editar a configuração-padrão do codespace.

Os espaços de códigos estão disponíveis para contas de usuário usando GitHub Free ou GitHub Pro. Para obter mais informações, consulte "produtos de GitHub

Neste artigo

Did this doc help you?

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Ou, learn how to contribute.

Observação: Codespaces está atualmente em versão beta pública limitada e sujeito a alterações. Durante o período beta, GitHub não faz nenhuma garantia sobre a disponibilidade de Codespaces. Para obter mais informações sobre fontes de publicação, consulte "About Codespaces."

Sobre configurações-padrão do codespace

Você pode criar uma configuração padrão de codespace para o seu repositório que determina o ambiente de cada novo codespace que alguém criar para esse repositório. A configuração define um contêiner de desenvolvimento que pode incluir estruturas, ferramentas, extensões e encaminhamento de porta.

Se você não definir uma configuração no repositório, o GitHub criará um código com uma imagem-base do Linux. A imagem-base do Linux inclui ferramentas para Node.js, JavaScript, TypeScript, Python, C++, Java, C#, .NET Core, PHP, e PowerShell. Para obter mais informações sobre a imagem base do Linux, consulte o repositório microsoft/vscode-dev-containers.

Você também pode personalizar aspectos do ambiente dos espaços de códigos para qualquer espaço de código que sua conta criar. A personalização pode incluir preferências de shell e ferramentas adicionais. Sua personalização dotfiles é aplicada antes da configuração de código padrão de um repositório. Para obter mais informações, consulte "Personalizar Codespaces para a sua conta".

É possível criar uma configuração-padrão do codespace usando uma configuração de contêiner pré-criada para seu tipo de projeto, ou você pode criar uma configuração personalizada específica para as necessidades do seu projeto.

Codespaces usa configurações contidas em um arquivo de configuração denominado devcontainer.json. Este arquivo pode ser localizado na raiz do repositório ou em uma pasta denominada .devcontainer. Se o arquivo estiver localizado na raiz do repositório, o nome do arquivo deve começar com um ponto: .devcontainer.json.

Você pode usar o seu devcontainer.json para definir as configurações-padrão para todo o ambiente de código, incluindo o editor de Visual Studio Code, mas você também pode definir configurações específicas do editor em um arquivo denominado .vscode/settings.json.

As alterações na configuração do codespace de um repositório aplicam-se apenas a cada novo codespace e não afetam nenhum codespace existente.

Usar uma configuração de contêiner pré-criado

Você pode usar qualquer configuração de contêiner pré-criada para Visual Studio Code, que está disponível no repositório vscode-dev-containers. As definições de contêiner pré-criadas incluem uma configuração comum para um tipo específico de projeto e podem ajudá-lo rapidamente a começar com uma configuração que já tem as opções de contêiner apropriadas, configurações do Visual Studio Code, e extensões do Visual Studio Code, que devem ser instaladas.

  1. Clonar ou fazer o download do repositório vscode-dev-containers.
  2. No repositório vscode-dev-containers, acesse a pasta contêineres e, em seguida, escolha uma configuração de contêiner para as necessidades de seu projeto. Vamos usar a configuração do contêiner Node.js & JavaScript como exemplo.
  3. Na pasta Node.js & JavaScript, copie a pasta .devcontainer para a raiz do repositório do seu projeto.
  4. Faça commit e push da nova configuração para o repositório do seu projeto no GitHub.

Cada novo codespace criado a partir de um branch que contém a pasta .devcontainer será configurado de acordo com o conteúdo da pasta. Para obter mais informações, consulte "Criar um codespace".

Criar uma configuração personalizada de codespace

Se nenhuma das configurações pré-criadas atender às suas necessidades, você poderá criar uma configuração personalizada adicionando um arquivo devcontainer.json. Este arquivo pode ser localizado na raiz do repositório ou em uma pasta denominada .devcontainer. Se o arquivo estiver localizado na raiz do repositório, o nome do arquivo deve começar com um ponto: .devcontainer.json.

No arquivo, você pode usar chaves de configuração compatíveis para especificar os aspectos do ambiente do código, como quais extensões do Visual Studio Code serão instaladas.

Ao configurar as configurações de editor para Visual Studio Code, há três escopos disponíveis: Workspace, Remote [Codespaces], e User. Se uma configuração for definida em vários escopos, as configurações do Workspace têm prioridade e, em seguida Remote [Codespaces], depois User.

Você pode definir as configurações de editor-padrão para Visual Studio Code em dois lugares.

  • As configurações do editor definidas em .vscode/settings.json são aplicadas como configurações do escopo do espaço de trabalho no codespace.
  • Configurações do editor definidas na chave Configurações no devcontainer.json são aplicadas como configuração de escopo Remote [Codespaces] nesse codespace.

Chaves de configuração de codespace compatíveis

Você pode usar as chaves de configuração compatíveis com Codespaces em devcontainer.json.

Configurações gerais

  • name
  • settings
  • extensões
  • forwardPorts
  • devPort
  • postCreateCommand

Docker, arquivo Docker ou configurações de imagem

  • image
  • Arquivo docker
  • context
  • containerEnv
  • remoteEnv
  • containerUser
  • remoteUser
  • updateRemoteUserUID
  • mounts
  • workspaceMount
  • workspaceFolder
  • runArgs
  • overrideCommand
  • shutdownAction
  • dockerComposeFile

Para obter mais informações sobre as configurações disponíveis para devcontainer.json, consulte referência do devcontainer.json na documentação do Visual Studio Code.

Did this doc help you?

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Ou, learn how to contribute.