---
title: Использование GitHub Codespaces с GitHub CLI
shortTitle: GitHub CLI
intro: 'Вы можете работать с {% data variables.product.prodname_github_codespaces %} непосредственно из командной строки с помощью `gh`, интерфейса командной строки {% data variables.product.product_name %}.'
miniTocMaxHeadingLevel: 3
versions:
fpt: '*'
ghec: '*'
type: how_to
topics:
- Codespaces
- CLI
- Developer
redirect_from:
- /codespaces/developing-in-codespaces/using-codespaces-with-github-cli
ms.openlocfilehash: e9a268273e0a6d85a17a795f593e7bd3a7885718
ms.sourcegitcommit: 0a6e3eee6eea9b1e445aea1e4461d64cf6b63218
ms.translationtype: MT
ms.contentlocale: ru-RU
ms.lasthandoff: 11/14/2022
ms.locfileid: '148163500'
---
## Сведения о {% data variables.product.prodname_cli %}
{% data reusables.cli.about-cli %} Дополнительные сведения см. в статьях [Сведения о {% data variables.product.prodname_cli %}](/github-cli/github-cli/about-github-cli).
Вы можете работать с {% data variables.product.prodname_github_codespaces %} в {% data variables.product.prodname_cli %}, чтобы:
- [Перечисление всех codespace](#list-all-of-your-codespaces)
- [Создание нового codespace](#create-a-new-codespace)
- [Остановка codespace](#stop-a-codespace)
- [Удаление codespace](#delete-a-codespace)
- [Переименование codespace](#rename-a-codespace)
- [Выполнения SSH в codespace](#ssh-into-a-codespace)
- [Открытие codespace в {% data variables.product.prodname_vscode %}](#open-a-codespace-in--data-variablesproductprodname_vscode-)
- [Открытие codespace в JupyterLab](#open-a-codespace-in-jupyterlab)
- [Копирование файла в codespace или из него](#copy-a-file-tofrom-a-codespace)
- [Изменение портов в codespace](#modify-ports-in-a-codespace)
- [Доступ к журналам codespace](#access-codespace-logs)
- [Получение доступа к удаленным ресурсам](#access-remote-resources)
- [Изменение типа компьютера codespace](#change-the-machine-type-of-a-codespace)
## Установка {% data variables.product.prodname_cli %}
{% data reusables.cli.cli-installation %}
## Использование {% data variables.product.prodname_cli %}
Если вы еще этого не сделали, выполните `gh auth login` для проверки подлинности с помощью учетной записи {% data variables.product.prodname_dotcom %}.
Чтобы использовать `gh` для работы с {% data variables.product.prodname_github_codespaces %}, введите `gh codespace SUBCOMMAND` или его псевдоним `gh cs SUBCOMMAND`.
В качестве примера ряда команд, которые можно использовать для работы с {% data variables.product.prodname_github_codespaces %}, вы можете:
* Создать список текущих codespace, чтобы проверить наличие codespace для определенного репозитория:
`gh codespace list`
* Создать новый codespace для требуемой ветви репозитория:
`gh codespace create -r github/docs -b main`
* Выполнения SSH в новом codespace:
`gh codespace ssh -c octocat-literate-space-parakeet-7gwrqp9q9jcx4vq`
* Переадресуйте порт на локальный компьютер:
`gh codespace ports forward 8000:8000 -c octocat-literate-space-parakeet-7gwrqp9q9jcx4vq`
## Команды `gh` для {% data variables.product.prodname_github_codespaces %}
В следующих разделах приведены примеры команд для каждой из доступных операций.
Полный справочник по командам `gh` для {% data variables.product.prodname_github_codespaces %}, включая сведения обо всех доступных параметрах для каждой команды, см. в справке {% data variables.product.prodname_cli %} для [gh codespace](https://cli.github.com/manual/gh_codespace). Кроме того, в командной строке используйте `gh codespace --help` для общей справки или `gh codespace SUBCOMMAND --help` справки по определенной подкоманде.
{% note %}
**Примечание.** Флаг `-c CODESPACE_NAME`, используемый со многими командами, не является обязательным. Если он пропущен, отобразится список codespace для выбора.
{% endnote %}
### Перечисление всех codespace
```shell
gh codespace list
```
Список содержит уникальное имя каждого codespace, которое можно использовать в других командах `gh codespace`.
Звездочка в конце имени ветви для codespace указывает, что в этом codespace есть незафиксированные или незафиксированные изменения.
### Создание нового codespace
```shell
gh codespace create -r OWNER/REPO_NAME [-b BRANCH]
```
Дополнительные сведения см. в разделе [Создание пространства кода для репозитория](/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository).
### Остановка codespace
```shell
gh codespace stop -c CODESPACE-NAME
```
Дополнительные сведения см. в разделе [{% data variables.product.prodname_github_codespaces %} в деталях](/codespaces/getting-started/deep-dive#closing-or-stopping-your-codespace).
### Удаление codespace
```shell
gh codespace delete -c CODESPACE-NAME
```
Дополнительные сведения см. в статье [Удаление codespace](/codespaces/developing-in-codespaces/deleting-a-codespace).
### Переименование codespace
```shell
gh codespace edit -c CODESPACE-NAME -d DISPLAY-NAME
```
Дополнительные сведения см. в разделе [Переименование codespace](/codespaces/customizing-your-codespace/renaming-a-codespace).
### Выполнения SSH в codespace
Чтобы выполнить команды на удаленном компьютере с codespace, вы можете выполнить SSH в codespace в терминале.
```shell
gh codespace ssh -c CODESPACE-NAME
```
{% note %}
**Примечание**. {% data reusables.codespaces.ssh-server-installed %}
Дополнительные сведения о файле и образе контейнера по умолчанию см. в разделе [Общие сведения о](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers)`devcontainer.json` контейнерах разработки.
{% endnote %}
{% data variables.product.prodname_github_codespaces %} копирует ключи SSH для GitHub в codespace при создании для простой проверки подлинности. Вам, возможно, будет предложено ввести парольную фразу для ключа SSH, после чего вы получите командную строку с удаленного компьютера с codespace.
Если у вас нет ключей SSH, следуйте инструкциям из статьи [Создание нового ключа SSH и его добавление в агент SSH](/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent).
### Открытие codespace в {% data variables.product.prodname_vscode %}
```shell
gh codespace code -c CODESPACE-NAME
```
На локальном компьютере должен быть установлен {% data variables.product.prodname_vscode_shortname %}. Дополнительные сведения см. в разделе [Использование {% data variables.product.prodname_github_codespaces %} в {% data variables.product.prodname_vscode %}](/codespaces/developing-in-codespaces/using-github-codespaces-in-visual-studio-code).
### Открытие codespace в JupyterLab
```shell
gh codespace jupyter -c CODESPACE-NAME
```
{% data reusables.codespaces.jupyterlab-installed-in-codespace %}
### Копирование файла в codespace или из него
```shell
gh codespace cp [-r] SOURCE(S) DESTINATION
```
Используйте префикс `remote:` в имени файла или каталога, чтобы указать, что он находится в codespace. Как и в случае с командой `cp` UNIX, первый аргумент указывает источник, а последний — назначение. Если назначение является каталогом, можно указать несколько источников. Используйте флаг (рекурсивный) `-r`, если какой-либо из источников является каталогом.
Расположение файлов и каталогов в codespace относится к домашнему каталогу удаленного пользователя.
#### Примеры
* Скопируйте файл с локального компьютера в каталог `$HOME` codespace:
`gh codespace cp myfile.txt remote:`
* Скопируйте файл в каталог, в котором репозиторий получен для изменения в codespace:
`gh codespace cp myfile.txt remote:/workspaces/REPOSITORY-NAME`
* Скопируйте файл из codespace в текущий каталог на локальном компьютере:
`gh codespace cp remote:myfile.txt .`
* Скопируйте три локальных файла в каталог `$HOME/temp` codespace:
`gh codespace cp a1.txt a2.txt a3.txt remote:temp`
* Скопируйте три файла из codespace в текущую рабочую папку на локальном компьютере:
`gh codespace cp remote:a1.txt remote:a2.txt remote:a3.txt .`
* Скопируйте локальный каталог в каталог `$HOME` codespace:
`gh codespace cp -r mydir remote:`
* Скопируйте каталог из codespace на локальный компьютер, изменив имя каталога:
`gh codespace cp -r remote:mydir mydir-localcopy`
Дополнительные сведения о команде `gh codespace cp`, включая дополнительные флаги, которые можно использовать, см. в [руководстве по {% data variables.product.prodname_cli %}](https://cli.github.com/manual/gh_codespace_cp).
### Изменение портов в codespace
Вы можете переадресовать порт в codespace на локальный порт. Порт остается переадресованным, пока выполняется процесс. Чтобы остановить переадресацию порта, нажмите клавиши Control+C.
```shell
gh codespace ports forward CODESPACE-PORT_NAME:LOCAL-PORT-NAME -c CODESPACE-NAME
```
Чтобы просмотреть сведения о переадресованных портах, введите `gh codespace ports` и выберите кодовое пространство.
Вы можете задать видимость переадресованного порта. {% data reusables.codespaces.port-visibility-settings %}
```shell
gh codespace ports visibility CODESPACE-PORT:private|org|public -c CODESPACE-NAME
```
Задать видимость для нескольких портов можно с помощью одной команды. Пример:
```shell
gh codespace ports visibility 80:private 3000:public 3306:org -c CODESPACE-NAME
```
Дополнительные сведения см. в разделе [Переадресация портов в кодовом пространстве](/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace).
### Доступ к журналам codespace
Вы можете просматривать журнал создания для codespace. После ввода этой команды появится запрос на ввод парольной фразы для ключа SSH.
```shell
gh codespace logs -c CODESPACE-NAME
```
Дополнительные сведения о журнале создания см. в разделе [Журналы {% data variables.product.prodname_github_codespaces %}](/codespaces/troubleshooting/github-codespaces-logs#creation-logs).
### Получение доступа к удаленным ресурсам
Вы можете использовать расширение {% data variables.product.prodname_cli %}, чтобы создать мост между codespace и вашим локальным компьютером, чтобы разрешить codespace обращаться к любому удаленному ресурсу, доступному с вашего компьютера. Дополнительные сведения об использовании расширения см. в разделе [Использование {% data variables.product.prodname_cli %} для получения доступа к удаленным ресурсам](https://github.com/github/gh-net#codespaces-network-bridge).
{% note %}
**Примечание.** Расширение {% data variables.product.prodname_cli %} сейчас предоставляется в бета-версии и подлежит изменениям.
{% endnote %}
### Изменение типа компьютера codespace
```shell
gh codespace edit -m MACHINE-TYPE-NAME
```
Дополнительные сведения см. на вкладке "{% data variables.product.prodname_cli %}" раздела "[Изменение типа компьютера для codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)".