Skip to main content

Устранение неполадок с средой

Узнайте об устранении неполадок в локальной среде и промежуточной платформе GitHub Docs .

Устранение неполадок тестов, которые завершаются локально, но передаются в CI

Если тесты выполняются локально и получают сбои в tests/rendering/server.js статических ресурсах, таблицах стилей или пакете JavaScript на стороне клиента, но те же тесты передаются в CI на pr, выполните команду npm run build. Это однократная команда, которая создает статические ресурсы локально.

Дополнительные сведения см. в разделе Создание локальной среды.

Устранение неполадок, связанных с промежуточными развертываниями

Если промежуточное развертывание ожидается более десяти минут, попробуйте закрыть запрос на вытягивание (без удаления ветви) и повторно открыть его. Это приведет к запуску нового промежуточного развертывания. Он ничего не сломает.

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

git commit --allow-empty -m 'empty commit to redeploy staging'
git push

Устранение неполадок с зависанием или зависанием CI

Если тесты зависают на "Выполняется" или "Ожидание" более часа, используйте приведенные ниже команды для повторного запуска CI путем отправки пустой фиксации в командной строке.

git commit --allow-empty -m 'empty commit to rerun CI'
git push

Устранение неполадок локального сервера

Если вы работаете npm start и получаете ошибку, попробуйте выполнить следующую Cannot find module команду перед перезапуском сервера.

npm install

Если проблема не устранена, используйте следующую команду, чтобы удалить node_modules каталог и переустановить его.

rm -rf node_modules
npm install

Устранение проблем промежуточного хранения

Если у вас возникли проблемы с промежуточным сервером, вы увидите дополнительные сведения об ошибке в браузере или в командной строке при локальном запуске сайта. Ознакомьтесь с вашей ветвью локально и выполните следующую команду, чтобы запустить локальный сервер.

npm start

При запуске сервера перейдите к проблемной статье https://localhost:4000 в браузере. Промежуточный сервер просто отобразит ошибку "Oops", но локальный сервер должен отображать трассировку стека для отладки.

Если вы видите ошибку, аналогичную приведенной ниже, убедитесь, что одиночные кавычки правильно экранируются в интерфейсном элементе. Кроме того, проверьте форматирование в redirect_from блоках. Дополнительные сведения см. в разделе Использование frontmatter YAML.

error parsing file: /Users/z/git/github/docs/content/dotcom/articles/troubleshooting-custom-domains-and-github-pages.md
(node:89324) UnhandledPromiseRejectionWarning: YAMLException: can not read a block mapping entry; a multiline key may not be an implicit key at line 4, column 14:
    redirect_from:
                 ^

Тест "Проверка ссылок: на PR" сообщает о неисправных ссылках на сайте, включая изображения. Если есть неработающие ссылки, тест завершится сбоем, и представление сведений теста отобразит либо TitleFromAutotitleError ошибки, которые просто сообщают URL-адрес сломанной ссылки, либо более описательный отчет, который также содержит страницу, содержащую сломанную ссылку.

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

При обнаружении неработаемой ссылки убедитесь, что ссылка правильно настроена. Например, если статья существует только для GHES версии 3.8+, убедитесь, что ссылка доступна для версии 3.8+.

Если статья, доступная для GitHub Enterprise Server, ссылается на другую версию GitHub Docs, добавьте версию в путь, чтобы предотвратить автоматическое преобразование URL-адреса, чтобы включить номер версии GitHub Enterprise Server . В следующем примере показано, как связать из статьи GitHub Enterprise Server с бесплатной версией статьи, Pro и Team.

[{{ data variables.product.prodname_github_connect }} Addendum to the {{ data variables.product.prodname_enterprise }} License Agreement](/free-pro-team@latest/articles/github-connect-addendum-to-the-github-enterprise-license-agreement/)"

Локальная отладка

Во время разработки можно посетить любую страницу http://localhost:4000 и добавить ?json=page в конец пути, чтобы отобразить некоторые базовые сведения, которые могут оказаться полезными для отладки. Помимо основных сведений, таких как название и введение, это несколько полей, которые могут быть полезны.

ПолеDescription
productVersionsПоказывает, что сайт анализирует из productVersions frontmatter.
permalinksОтображает все перемычки, создаваемые сайтом для страницы.
redirect_fromОтображает жестко закодированные перенаправления в интерфейсном элементе redirect_from .
redirectsОтображает все перенаправления, создаваемые сайтом для страницы.
includesPlatformSpecificContentПоказывает, обнаруживает ли сайт любое содержимое для конкретной платформы на странице.

Работа с обработкой жидкости

Если в примере текста или кода содержится содержимое между фигурными скобками ({ и }), необходимо упаковать его между &#123% raw %} тегами, &#123% raw %} чтобы отключить обработку Liquid для этого раздела. Например:

  • Используйте:

    GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %}
    
  • Избегайте:

    GITHUB_TOKEN: $${{ secrets.GITHUB_TOKEN }}$