Skip to main content

Usando codespaces com a CLI do GitHub

Você pode trabalhar com GitHub Codespaces diretamente da sua linha de comando usando gh, a interface de linha de comando de GitHub.

Codespaces is available for organizations using GitHub Team or GitHub Enterprise Cloud. Para obter mais informações, consulte os "produtos do GitHub".

Sobre o GitHub CLI

GitHub CLI é uma ferramenta de código aberto para usar GitHub a partir da linha de comando do seu computador. Quando você está trabalhando na linha de comando, você pode usar GitHub CLI para economizar tempo e evitar mudar o contexto. Para obter mais informações, consulte "Sobre GitHub CLI.

Você pode trabalhar com Codespaces em GitHub CLI para:

Instalar o GitHub CLI

For installation instructions for GitHub CLI, see the GitHub CLI repository.

Usar GitHub CLI

Se você ainda não o tiver feito, execute login gh auth para efetuar a autenticação com a sua conta de GitHub.

Para usar gh para trabalhar com Codespaces, digite gh codespace <COMMAND> ou seu alias gh cs <COMMAND>.

Como exemplo de uma série de comandos que você pode usar para trabalhar com GitHub Codespaces, você pode:

  • Listar seus codespaces atuais, para verificar se você tem um codespace para um determinado repositório:
    gh codespace list
  • Criar um novo codespace para o branch do repositório requerido:
    gh codespace create -r github/docs -b main
  • SSH into the new codespace:
    gh codespace ssh -c mona-github-docs-v4qxrv7rfwv9w
  • Encaminhar uma porta para sua máquina local:
    gh codespace ports forward 8000:8000 -c mona-github-docs-v4qxrv7rfwv9w

Comandos de gh para GitHub Codespaces

As seções abaixo fornecem exemplos de comandos para cada uma das operações disponíveis.

Para obter uma referência completa de comandos gh para GitHub Codespaces, incluindo detalhes de todas as opções disponíveis para cada comando, consulte a ajuda on-line de GitHub CLI para "gh codespace". Como alternativa, use o gh code [<SUBCOMMAND>...] --help na linha de comando.

Nota: O sinalizador -c <em>codespace-name</em>, usado com muitos comandos, é opcional. Se você omitir, será exibida uma uma lista de codespaces para você escolher.

Listar todos os seus codespaces

gh codespace list

A lista inclui o nome único de cada codespace, que você pode usar em outros comandos gh codespace.

Criar um novo codespace

gh codespace create -r owner/repository [-b branch]

Para obter mais informações, consulte "Criar um codespace".

Parar um codespace

gh codespace stop -c codespace-name

Para obter mais informações, consulte "Aprofundamento em codespaces".

Excluir um codespace

gh codespace delete -c codespace-name

Para obter mais informações, consulte "Excluindo um codespace".

SSH em um codespace

Para executar comandos na máquina de codespace remoto, a partir do seu terminal, você pode fazer SSH no codespace.

gh codespace ssh -c codespace-name

GitHub Codespaces copia suas chaves SSH no codespace ao criar para uma experiência de autenticação perfeita. É possível que se solicite a senha da sua chave SSH e, após isso, você obterá uma instrução de comando da máquina de codespace remoto.

Se você não tiver nenhuma chave SSH, siga as instruções em "Gerando uma nova chave SSH e adicionando-a ao agente ssh-ssh-".

Abrir um codespace em Visual Studio Code

gh codespace code -c codespace-name

Para obter mais informações, consulte "Usando Codespaces em Visual Studio Codede".

Copiar um arquivo de/para um codespace

gh codespace cp [-r] source(s) destination 

Use o prefixo remote: em um arquivo ou diretório para indicar que está no codespace. Como o comando cp do UNIX, o primeiro argumento especifica a fonte e o último especifica o destino. Se o destino for um diretório, você poderá especificar várias fontes. Use o sinalizador -r (recursivo) se qualquer das fontes for um diretório.

O local dos arquivos e diretórios no codespace é relativo ao diretório principal do usuário remoto.

Exemplos

  • Copie um arquivo da máquina local para o diretório $HOME de um codespace:

    gh codespace cp myfile.txt remote:

  • Copiar um arquivo para o diretório no qual se faz o check-out de um repositório em um codespace:

    gh codespace cp myfile.txt remote:/workspaces/<REPOSITORY-NAME>

  • Copiarum arquivo de um código para o diretório atual na máquina local:

    gh codespace cp remote:myfile.txt .

  • Copie três arquivos locais para o diretório $HOME/temp de um codespace:

    gh codespace cp a1.txt a2.txt a3.txt remote:temp

  • Copie três arquivos de um codespace para o diretório de trabalho atual na máquina local:

    gh codespace cp remote:a1.txt remote:a2.txt remote:a3.txt .

  • Copiar um diretório local para o diretório $HOME de um codespace:

    gh codespace cp -r mydir remote:

  • Copiar o diretório de um codespace para a máquina local, alterando o nome do diretório:

    gh codespace cp -r remote:mydir mydir-localcopy

Para obter mais informações sobre o comando gh code cp, incluindo sinalizadores adicionais que você pode usar, consulte o manual de GitHub CLI.

Modificar portas em um codespace

Você pode encaminhar uma porta em um codespace para uma porta local. A porta será encaminhada enquanto o processo estiver em execução. Para parar de encaminhar a porta, pressione Controle+C.

gh codespace ports forward codespace-port-number:local-port-number -c codespace-name

Para ver os detalhes das portas encaminhadas, digite gh codespace ports e, em seguida, escolha um codespace.

Você pode definir a visibilidade de uma porta encaminhada. There are three visibility settings:

  • private - Visible only to you. This is the default setting when you forward a port.
  • org - Visible to members of the organization that owns the repository.
  • public - Visible to anyone who knows the URL and port number.
gh codespace ports visibility codespace-port:private|org|public -c codespace-name

Você pode definir a visibilidade de várias portas com um comando. Por exemplo:

gh codespace ports visibility 80:private 3000:public 3306:org -c codespace-name

Para obter mais informações, consulte "Encaminhando portas no seu codespace".

Acessar registros de codespaces

Você pode ver o registro de criação de um codespace. Depois de entrar neste comando será solicitado que você digite a senha da sua chave SSH.

gh codespace logs -c codespace-name

Para obter mais informações sobre o registro de criação, consulte "Registros de codespaces".