Solução de problemas de testes que falham localmente, mas são aprovados no CI
Se você executar testes localmente e receber falhas em tests/rendering/server.js
sobre ativos estáticos, folhas de estilo ou o pacote JavaScript no lado do cliente, mas os mesmos testes passarem no CI em uma PR, execute o comando npm run build
. Este é um comando único que cria ativos estáticos localmente.
Para obter mais informações, confira "Como criar um ambiente local".
Solução de problemas de implantações de preparo paralisadas
Se uma implantação de preparo estiver pendente por mais de dez minutos, tente fechar sua solicitação de pull (sem excluir o branch) e reabri-la. Isso disparará uma nova implantação de preparo. Não vai quebrar nada.
Se isso não funcionar, use os comandos abaixo para disparar uma nova implantação de preparo, enviando uma confirmação vazia na linha de comando.
git commit --allow-empty -m 'empty commit to redeploy staging'
git push
Solução de problemas de CI parada ou travada
Se os seus testes estiverem presos no estado "Em andamento" ou "Pendente" por mais de uma hora, use os comandos abaixo para executar novamente o CI, enviando uma confirmação vazia na linha de comando.
git commit --allow-empty -m 'empty commit to rerun CI'
git push
Solucionar problemas com o servidor local
Se você estiver executando o npm start
e receber um erro de Cannot find module
, tente o seguinte comando antes de reiniciar o servidor.
npm install
Se isso não corrigir o problema, use o seguinte comando para remover o diretório node_modules
e reinstalar.
rm -rf node_modules
npm install
Solução de problemas de preparo
Se você estiver tendo problemas com o servidor de preparo, verá mais informações sobre o erro no navegador ou na linha de comando se executar o site localmente. Verifique seu branch localmente e use o comando a seguir para iniciar o servidor local.
npm start
Quando o servidor estiver em execução, navegue até o artigo problemático em https://localhost:4000
no navegador. O servidor de preparo mostrará apenas um erro "Oops", mas o servidor local deverá mostrar um rastreamento de pilha para depuração.
Se você vir um erro semelhante ao abaixo, certifique-se de que as aspas simples estejam corretamente escapadas no frontmatter. Além disso, verifique a formatação em blocos redirect_from
. Para obter mais informações, confira "Usar front matter 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:
^
Verificação de links internos
O teste "Verificador de links: em PR" registra links desfeitos no site, incluindo imagens. Se houver links desfeitos, o teste falhará, e a exibição de detalhes do teste mostrará erros TitleFromAutotitleError
, que apenas relatam a URL do link desfeito, ou um relatório mais descritivo que também lista a página que contém o link desfeito.
Se o erro não incluir o local do link desfeito, você precisará procurar esse link no repositório docs
para encontrar o arquivo.
Quando localizar o link desfeito, verifique se o link está com a versão correta. Por exemplo, se o artigo apenas existir para o GHES versão 3.8+, certifique-se de que o link tenha versão para 3.8+.
Se um artigo disponível para o GitHub Enterprise Server tiver um link para uma versão diferente da GitHub Docs, inclua a versão no caminho para impedir que a URL seja convertida automaticamente para incluir um número de versão do GitHub Enterprise Server. O exemplo a seguir demonstra como vincular de um artigo GitHub Enterprise Server para uma versão Free, Pro e Team de um artigo.
[{{ 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/)"
Depurar no local
Durante o desenvolvimento, você pode visitar qualquer página em http://localhost:4000
e adicionar ?json=page
ao final do caminho para mostrar algumas informações subjacentes que podem ser úteis para depuração. Além de informações básicas, como título e introdução, esses são alguns campos que podem ser úteis.
Campo | Descrição |
---|---|
productVersions | Mostra o que o site está analisando a partir do frontmatter productVersions . |
permalinks | Mostra todos os permalinks que o site está gerando para a página. |
redirect_from | Mostra os redirecionamentos codificados no frontmatter redirect_from . |
redirects | Mostra todos os redirecionamentos que o site está gerando para a página. |
includesPlatformSpecificContent | Mostra se o site detecta algum conteúdo específico da plataforma na página. |
Trabalhar com processamento de líquidos
Se o seu texto ou exemplo de código incluir conteúdo entre colchetes ({
e }
), você precisará envolvê-lo entre {% raw %}
e {% raw %}
para desabilitar o processamento de líquido para essa seção. Por exemplo:
-
Use:
GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %}
-
Evitar:
GITHUB_TOKEN: $${{ secrets.GITHUB_TOKEN }}$