Сведения о GitHub CLI
GitHub CLI — это инструмент с открытым исходным кодом для использования GitHub из командной строки компьютера. При работе с командной строкой можно использовать GitHub CLI — это позволит экономить время и не переключать контекст. Дополнительные сведения см. в разделе Сведения о GitHub CLI.
Вы можете работать с GitHub Codespaces в GitHub CLI:
- Список всех пространств кода
- Создание нового пространства кода
- Просмотр сведений о пространстве кода
- Остановка codespace
- Удаление codespace
- Переименование пространства кода
- Перестроение пространства кода
- Выполнения SSH в codespace
- Открытие codespace в Visual Studio Code
- Открытие codespace в JupyterLab
- Копирование файла в пространство кода и из нее
- Изменение портов в codespace
- Доступ к журналам codespace
- Получение доступа к удаленным ресурсам
- Изменение типа компьютера пространства кода
Установка GitHub CLI
Инструкции по установке для GitHub CLI см. в репозитории GitHub CLI.
Использование GitHub CLI
Если вы еще этого не сделали, выполните gh auth login
для проверки подлинности с помощью учетной записи GitHub.
Для работы gh
с GitHub Codespaces, введите gh codespace SUBCOMMAND
или его псевдоним gh cs SUBCOMMAND
.
В качестве примера ряда команд, которые можно использовать для работы с 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
для GitHub Codespaces
В следующих разделах приведены примеры команд для каждой из доступных операций.
Полный справочник gh
по командам для GitHub Codespaces, включая сведения обо всех доступных параметрах для каждой команды, см. в справке GitHub CLI в интернете для пространства кода gh. Кроме того, в командной строке используйте gh codespace --help
общую справку или gh codespace SUBCOMMAND --help
справку по определенному подкомандам.
Примечание.
Флаг -c CODESPACE_NAME
, используемый со многими командами, является необязательным. Если он пропущен, отобразится список codespace для выбора.
Перечисление всех codespace
gh codespace list
Список содержит уникальное имя каждого codespace, которое можно использовать в других командах gh codespace
.
Звездочка в конце имени ветви для пространства кода указывает на то, что в этом пространстве кода есть незафиксированные или незафиксированные изменения.
Создание нового codespace
gh codespace create -r OWNER/REPO_NAME [-b BRANCH]
Дополнительные сведения см. в разделе Создание пространства кода для репозитория.
Просмотр сведений о пространстве кода
gh codespace view
После выполнения этой команды вам будет предложено выбрать одно из существующих пространств кода. Затем отображаются следующие сведения:
- Имя пространства кода
- Состояние (например, "Доступно" или "Завершение работы")
- Репозиторий
- Состояние Git
- Путь к файлу конфигурации контейнера разработки, используемому для создания пространства кода
- Тип компьютера
- Время ожидания перед переходом в режим простоя
- Дата и время создания пространства кода
- Период хранения
Дополнительные сведения см. в справочнике по интерфейсу командной строки GitHub.
Остановка codespace
gh codespace stop -c CODESPACE-NAME
Дополнительные сведения см. в разделе Подробные сведения о GitHub Codespaces.
Удаление codespace
gh codespace delete -c CODESPACE-NAME
Дополнительные сведения см. в разделе Удаление codespace.
Переименование пространства кода
gh codespace edit -c CODESPACE-NAME -d 'DISPLAY-NAME'
Дополнительные сведения см. в разделе Переименование codespace.
Перестроение пространства кода
gh codespace rebuild
Чтобы выполнить полную перестроение, добавьте --full
в конце этой команды. Дополнительные сведения см. в разделе Перестроение контейнера в пространстве кода.
При использовании этой команды для перестроения пространства кода используется devcontainer.json
файл, который в настоящее время сохраняется в системе пространства кода. Это происходит независимо от того, сохранено ли текущее состояние файла в системе управления версиями. Дополнительные сведения см. в разделе Основные сведения о контейнерах разработки.
Выполнения SSH в codespace
Чтобы выполнить команды на удаленном компьютере с codespace, вы можете выполнить SSH в codespace в терминале.
gh codespace ssh -c CODESPACE-NAME
Примечание.
Пространство кода, к которому вы подключаетесь, должно работать на сервере SSH. Образ контейнера разработки по умолчанию включает сервер SSH, который запускается ав��оматически. Если пространства кода не создаются на основе образа по умолчанию, можно установить и запустить сервер SSH, добавив следующий features
объект в devcontainer.json
файл.
"features": {
// ...
"ghcr.io/devcontainers/features/sshd:1": {
"version": "latest"
},
// ...
}
Дополнительные сведения о devcontainer.json
файле и образе контейнера по умолчанию см. в разделе Основные сведения о контейнерах разработки.
GitHub Codespaces автоматически создает локальный ключ SSH для обеспечения простой проверки подлинности. Дополнительные сведения о подключении с помощью SSH см. в статье gh codespace ssh
.
Открытие codespace в Visual Studio Code
gh codespace code -c CODESPACE-NAME
На локальном компьютере должен быть установлен VS Code. Дополнительные сведения см. в разделе Использование GitHub Codespaces в Visual Studio Code.
Открытие codespace в JupyterLab
gh codespace jupyter -c CODESPACE-NAME
Приложение JupyterLab должно быть установлено в открываемом пространстве кода. Образ контейнера разработки по умолчанию включает JupyterLab, поэтому пространства кода, созданные на основе образа по умолчанию, всегда будут установлены JupyterLab. Дополнительные сведения о образе по умолчанию см. в разделе AUTOTITLE и репозиторияdevcontainers/images
. Если вы не используете образ по умолчанию в конфигурации контейнера разработки, можно установить JupyterLab, добавив ghcr.io/devcontainers/features/python
эту функцию в devcontainer.json
файл. Этот параметр "installJupyterlab": true
следует включить. Дополнительные сведения см. в разделе README для python
функции в репозитории.devcontainers/features
Копирование файла в codespace или из него
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
, включая дополнительные флаги, которые можно использовать, см. в руководстве по GitHub CLI.
Изменение портов в codespace
Вы можете переадресовать порт в codespace на локальный порт. Порт оста��тся переадресованным, пока выполняется процесс. Чтобы остановить переадресацию порта, нажмите клавиши Control+C.
gh codespace ports forward CODESPACE-PORT_NAME:LOCAL-PORT-NAME -c CODESPACE-NAME
Чтобы просмотреть сведения о переадресованных портах, введите gh codespace ports
и выберите кодовое пространство.
Вы можете задать видимость переадресованного порта. Существует три варианта видимости.
private
— объект виден только вам. Это вариант по умолчанию при переадресации порта.org
— объект виден членам организации, которой принадлежит репозиторий.public
— объект виден всем, кто знает URL-адрес и номер порта.
gh codespace ports visibility CODESPACE-PORT:private|org|public -c CODESPACE-NAME
Задать видимость для нескольких портов можно с помощью одной команды. Например:
gh codespace ports visibility 80:private 3000:public 3306:org -c CODESPACE-NAME
Дополнительные сведения см. в разделе Переадресация портов в вашем codespace.
Доступ к журналам codespace
Вы можете просматривать журнал создания для codespace. После ввода этой команды появится запрос на ввод парольной фразы для ключа SSH.
gh codespace logs -c CODESPACE-NAME
Дополнительные сведения о журнале создания см. в разделе Журналы GitHub Codespaces.
Получение доступа к удаленным ресурсам
Вы можете использовать расширение GitHub CLI, чтобы создать мост между codespace и вашим локальным компьютером, чтобы разрешить codespace обращаться к любому удаленному ресурсу, доступному с вашего компьютера. Дополнительные сведения об использовании расширения см. в статье "Использование GitHub CLI для доступа к удаленным ресурсам.
Примечание.
Расширение GitHub CLI в настоящее время находится в public preview и подлежит изменению.
Изменение типа компьютера пространства кода
gh codespace edit -m MACHINE-TYPE-NAME
Дополнительные сведения см. на вкладке "GitHub CLI" autoTITLE.