Skip to main content

Настройка источника публикации для сайта GitHub Pages

Можно настроить публикацию сайта GitHub Pages при отправке изменений в определенную ветвь, а также для этого можно создать рабочий процесс GitHub Actions.

Кто эту функцию можно использовать?

People with admin or maintainer permissions for a repository can configure a publishing source for a GitHub Pages site.

GitHub Pages доступен в общедоступных репозиториях с GitHub Free и GitHub Free для организаций, а также в общедоступных и частных репозиториях с GitHub Pro, GitHub Team, GitHub Enterprise Cloudи GitHub Enterprise Server. Дополнительные сведения см. в разделе "Планы GitHub".

Сведения об источниках публикаций

Сайт можно публиковать при отправке изменений в определенную ветвь, а также с помощью рабочего процесса GitHub Actions.

Если вам не нужно управлять сборкой сайта, рекомендуется публиковать сайт, когда изменения отправляются в определенную ветвь. Можно указать, какую ветвь и папку следует использовать в качестве источника публикации. Исходной ветвью может стать любая ветвь репозитория, а исходной папкой может быть либо корень репозитория (/), либо папка /docs в исходной ветви. После отправки изменений в исходную ветвь изменения в исходной папке будут опубликованы на вашем сайте GitHub Pages.

Если вы хотите использовать сборку, отличную от Jekyll, или не хотите хранить скомпилированные статические файлы в выделенной ветви, рекомендуется создать рабочий процесс GitHub Actions для публикации сайта. GitHub Enterprise Cloud предоставляет начальные рабочие процессы для распространенных сценариев публикации, чтобы помочь вам в создании рабочего процесса.

Предупреждение. Если ваше предприятие не использует Enterprise Managed Users, сайты GitHub Pages по умолчанию находятся в открытом доступе, даже если репозиторий для сайта является частным или внутренним. Для публикации сайта с закрытым доступом используйте управление доступом. Либо, если в репозитории вашего сайта есть конфиденциальные данные, удалите их перед публикацией. Дополнительные сведения см. в разделе "[AUTOTITLE" и "Сведения о репозиториях](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site)".

Публикация из ветви

  1. Убедитесь, что в вашем репозитории уже содержится ветвь, которую необходимо использовать в качестве источника публикации.

  2. В GitHub Enterprise Cloudперейдите в репозиторий сайта.

  3. Под именем репозитория щелкните Параметры. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и щелкните Параметры.

    Снимок экрана: заголовок репозитория с вкладками. Вкладка "Параметры" выделена темно-оранжевым контуром.

  4. В разделе "Код и автоматизация" боковой панели щелкните Pages.

  5. В разделе "Сборка и развертывание" в пункте "Источник" выберите Развернуть из ветви.

  6. В разделе "Сборка и развертывание" используйте раскрывающееся меню ветви и выберите источник публикации. Снимок экрана: параметры страниц в репозитории GitHub . Меню для выбора ветви для источника публикации с меткой "Нет", описано в темно-оранжевый цвет.

  7. При необходимости используйте раскрывающееся меню папки, чтобы выбрать папку для источника публикации. Снимок экрана: параметры страниц в репозитории GitHub . Меню для выбора папки для источника публикации с меткой "/(корень)" описано в темно-оранжевый цвет.

  8. Нажмите кнопку Сохранить.

Устранение неполадок при публикации из ветви

Note: If your repository contains symbolic links, you will need to publish your site using a GitHub Actions workflow. For more information about GitHub Actions, see "Документация GitHub Actions."

Примечания

  • Если вы публикуете ветвь и ваш сайт не опубликован автоматически, убедитесь, что кто-то с разрешениями администратора и проверенный адрес электронной почты отправлен в источник публикации.

  • Фиксации, отправленные рабочим процессом GitHub Actions с использованием GITHUB_TOKEN сборки GitHub Pages.

Если вы выберете папку docs в любой ветви в качестве источника публикации, а затем удалите папку /docs из этой ветви в репозитории, сайт не будет собран и вы получите сообщение об ошибке сборки страницы для отсутствующей папки /docs. Дополнительные сведения см. в разделе Устранение ошибок сборки Jekyll для сайтов GitHub Pages.

Сайт GitHub Pages всегда будет развертываться с помощью выполнения рабочего процесса GitHub Actions, даже если вы настроили сайт GitHub Pages для сборки с использованием другого средства CI. Большинство внешних рабочих процессов CI развертываются в GitHub Pages путем фиксации выходных данных сборки в gh-pages ветви репозитория и обычно включают .nojekyll файл. В этом случае рабочий процесс GitHub Actions обнаружит состояние, что ветвь не нуждается в шаге сборки, и выполнит только шаги, необходимые для развертывания сайта на серверах GitHub Pages.

Чтобы найти потенциальные ошибки со сборкой или развертыванием, можно проверить выполнение рабочего процесса для сайта GitHub Pages, просмотрев выполнение рабочего процесса репозитория. Дополнительные сведения см. в разделе Просмотр журнала выполнения рабочего процесса. Дополнительные сведения о повторном запуске рабочего процесса в случае ошибки см. в разделе "Повторный запуск рабочих процессов и заданий".

Публикация с помощью пользовательского рабочего процесса GitHub Actions

Чтобы настроить публикацию сайта с помощью GitHub Actions, выполните следующие действия:

  1. В GitHub Enterprise Cloudперейдите в репозиторий сайта.

  2. Под именем репозитория щелкните Параметры. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и щелкните Параметры.

    Снимок экрана: заголовок репозитория с вкладками. Вкладка "Параметры" выделена темно-оранжевым контуром.

  3. В разделе "Код и автоматизация" боковой панели щелкните Pages.

  4. В разделе "Сборка и развертывание" в разделе "Источник" выберите GitHub Actions.

  5. GitHub Enterprise Cloud предложит несколько начальных рабочих процессов. Если у вас уже есть рабочий процесс для публикации сайта, этот шаг можно пропустить. В противном случае выберите один из вариантов, чтобы создать рабочий процесс GitHub Actions. Дополнительные сведения о создании пользовательских рабочих процессов см. в разделе "Создание пользовательского рабочего процесса GitHub Actions для публикации сайта".

    GitHub Pages не связывает определенный рабочий процесс с параметрами GitHub Pages. Однако параметры GitHub Pages будут ссылаться на тот запуск рабочего процесса, который выполнял последнее развертывание вашего сайта.

Создание пользовательского рабочего процесса GitHub Actions для публикации сайта

Дополнительные сведения о GitHub Actionsсм. в разделе "Документация GitHub Actions".

Во время настройки публикации сайта с помощью GitHub Actions GitHub Enterprise Cloud предложит начальные рабочие процессы, подходящие для распространенных сценариев публикации. Обычно рабочий процесс состоит из следующих действий:

  1. Активируйте каждый раз, когда выполняется отправка в ветвь по умолчанию репозитория или каждый раз, когда рабочий процесс выполняется вручную на вкладке "Действия".
  2. Извлечение содержимого репозитория с помощью действия actions/checkout.
  3. Создание статических файлов сайта, если это требуется для вашего сайта.
  4. Отправка статических файлов в качестве артефакта с помощью действия actions/upload-pages-artifact.
  5. Развертывание артефакта с помощью действия actions/deploy-pages, если рабочий процесс был активирован отправкой в ветвь по умолчанию. Этот шаг пропускается, если рабочий процесс был активирован запросом на вытягивание.

В начальных рабочих процессах используется среда развертывания под названием github-pages. Если в вашем репозитории не содержится среда github-pages, она будет создана автоматически. Рекомендуется добавить правило защиты развертывания, чтобы только ветвь по умолчанию могли развертываться в этой среде. Дополнительные сведения см. в разделе Использование сред для развертывания.

Примечание. Файл CNAME в репозитории не добавляет и не удаляет личный домен автоматически. Вместо этого личный домен необходимо настроить в параметрах репозитория или с помощью API. Дополнительные сведения см. в разделе "[AUTOTITLE" и "Управление личным доменом для сайта "Страницы GitHub"](/rest/pages#update-information-about-a-github-pages-site)".

Устранение неполадок при публикации с помощью пользовательского рабочего процесса GitHub Actions

Сведения об устранении неполадок рабочего процесса GitHub Actions см. в разделе "Сведения о мониторинге и устранении неполадок".