Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

Настройка репозитория шаблонов для GitHub Codespaces

Вы можете помочь пользователям приступить к работе с проектом, настроив репозиторий шаблонов для использования с GitHub Codespaces.

Введение

Настроив репозиторий шаблонов, вы можете помочь пользователям приступить к работе с платформой, библиотекой или другим проектом в GitHub Codespaces. Пользователи смогут сразу же приступить к работе с файлами шаблонов в облачной среде разработки, не беспокоясь о клонировании репозитория, установке инструментов или других зависимостей. С некоторой конфигурацией вы сможете настроить пользователей в codespace с важными файлами, уже открытыми для редактирования, а также с приложением, уже запущенным на вкладке браузера предварительного просмотра в веб-редакторе VS Code.

Любой пользователь с доступом на чтение к репозиторию шаблонов может создать codespace на странице репозитория на GitHub Enterprise Cloud. Вы можете превратить любой существующий репозиторий в шаблон, и вам не нужно изменять параметры, чтобы разрешить пользователям создавать пространство кода из репозитория шаблонов. Дополнительные сведения о том, как превратить репозиторий в шаблон, см. в разделе Создание репозитория шаблонов.

Чтобы помочь пользователям найти шаблон и быстро приступить к работе, вы можете поделиться ссылкой на страницу создания codespace для шаблона. Например, вы можете указать эту ссылку в руководстве по началу работы с платформой. Вы можете использовать параметр "Поделиться прямой ссылкой" и выбрать Быстрый запуск , чтобы создать ссылку, которая приведет пользователей на страницу, где они могут быстро создать новое пространство кода или возобновить последнее. Дополнительные сведения см. в разделе Упрощение быстрого создания и возобновления codespace.

Когда кто-то создает codespace на основе шаблона, содержимое репозитория шаблонов будет клонировано в его codespace. Когда пользователь будет готов, он сможет опубликовать свою работу в новом репозитории на GitHub Enterprise Cloud, принадлежащих его личная учетная запись. Плата за использование codespace будет взиматься с пользователя, создавшего его. Дополнительные сведения см. в разделе Создание codespace на основе шаблона.

Описание шаблона

Если у вас его нет, создайте файл сведений для репозитория шаблонов, чтобы описать назначение шаблона и как начать работу с ним. Дополнительные сведения см. в разделе Сведения о файлах сведений.

Вы также можете предоставить краткое описание проекта, перейдя на страницу репозитория и щелкнув рядом с разделом "Сведения " в правой части страницы.

Снимок экрана: раздел "О программе" на странице репозитория. Кнопка параметров (символ шестеренки) выделена темно-оранжевым контуром.

Добавление начальных файлов

Репозитории шаблонов обычно содержат начальные файлы с стандартным кодом, чтобы пользователи могли быстро приступить к работе с библиотекой, платформой или другими технологиями.

Инструкции по типам файлов для включения можно найти в начальных файлах, включенных в официальные шаблоны GitHub для GitHub Codespaces, как показано ниже.

  1. Перейдите на страницу "Ваши codespaces" на github.com/codespaces. 1. Чтобы просмотреть полный список шаблонов, в разделе "Изучение шаблонов быстрого запуска" нажмите кнопку Просмотреть все.

    Снимок экрана: раздел "Изучение шаблонов быстрого запуска". Параметр "Просмотреть все" выделен темно-оранжевым контуром.

  2. Чтобы просмотреть репозиторий шаблонов, содержащий файлы шаблона, щелкните имя шаблона.

    Снимок экрана: раздел "Обзор шаблонов быстрого запуска" на странице codespaces. Имена шаблонов выделены оранжевыми контурами.

Настройка контейнера разработки

Вы можете добавить файлы конфигурации контейнера разработки в репозиторий шаблонов, чтобы настроить среду разработки для пользователей, использующих шаблон с GitHub Codespaces. Вы можете выбрать из списка предопределенных параметров конфигурации в Visual Studio Code или создать пользовательскую конфигурацию, написав собственный devcontainer.json файл. Если не добавить файлы конфигурации, будет использоваться образ контейнера по умолчанию. Дополнительные сведения см. в разделах Основные сведения о контейнерах разработки и Добавление конфигурации контейнера разработки в репозиторий.

Примечание. Когда пользователи создают codespace с помощью кнопки Использовать этот шаблон в репозитории шаблонов, им не будет предоставлен выбор между конфигурациями. Codespace будет построено на основе конфигурации по умолчанию, определенной в .devcontainer/devcontainer.jsonили в .devcontainer.json корне репозитория.

Вы должны настроить контейнер разработки с помощью средств и настройки, чтобы предоставить пользователям наилучшие возможности работы с вашим шаблоном. Например, в файле:devcontainer.json

  • Свойство можно использовать для openFiles определения списка файлов, которые будут автоматически открываться в веб-клиенте VS Code при создании codespace на основе шаблона.
  • Если пользователям нужно предоставить личные секреты, такие как ключи API, для запуска приложения в шаблоне, вы можете предложить им предоставить эти секреты. Дополнительные сведения см. в разделе Specifying recommended secrets for a repository.
  • Если шаблон содержит файлы для веб-приложения, вы можете сделать приложение автоматически запущенным в кодовом пространстве пользователя. Это можно сделать с помощью postAttachCommand свойства , чтобы запустить скрипт, который запускает приложение на локальном сервере, как только веб-клиент VS Code подключится к codespace, и задав onAutoForward свойству порта openPreview значение , чтобы отобразить приложение, работающее на этом порту, в простом браузере, внедренном в веб-клиент VS Code.

Следующие параметры конфигурации для шаблона React открывают app.js файл в редакторе пользователя, запускают npm start (определяются в package.json файле), чтобы запустить локальный сервер, и перенаправят порт 3000 на вкладку браузера предварительного просмотра в codespace.

{
    "postAttachCommand": {
      "server": "npm start"
    },

    "portsAttributes": {
      "3000": {
        "label": "Application",
        "onAutoForward": "openPreview"
      }
    },

    "customizations": {
      "codespaces": {
        "openFiles": ["src/App.js"]
      }
    }
}

Дополнительные сведения см. в разделе Автоматическое открытие файлов в codespaces для репозитория и спецификации контейнеров разработки на веб-сайте "Контейнеры разработки".