Solución de problemas de pruebas que producen errores localmente, pero que superan las pruebas de CI
Si ejecuta pruebas localmente y obtiene errores en tests/rendering/server.js
en recursos estáticos, hojas de estilo o la agrupación de JavaScript del lado cliente, pero las mismas pruebas se superan en CI en PR una solicitud de incorporación de cambios, ejecute el comando npm run build
. Se trata de un comando único que crea recursos estáticos localmente.
Para obtener más información, vea «Creación de un entorno local».
Solución de problemas de implementaciones de ensayo detenidas
Si una implementación de ensayo está pendiente durante más de diez minutos, intente cerrar la solicitud de incorporación de cambios (sin eliminar la rama) y volver a abrirla. Esto desencadenará una nueva implementación de ensayo. No interrumpirá nada.
Si eso no funciona, use los comandos siguientes para desencadenar una nueva implementación de ensayo mediante la inserción de una confirmación vacía en la línea de comandos.
git commit --allow-empty -m 'empty commit to redeploy staging'
git push
Solución de problemas de CI detenidos o bloqueados
Si las pruebas están bloqueadas en "En curso" o "Pendiente" durante más de una hora, use los comandos siguientes para volver a ejecutar CI insertando una confirmación vacía en la línea de comandos.
git commit --allow-empty -m 'empty commit to rerun CI'
git push
Solución de problemas de servidor local
Si está ejecutando npm start
y recibe un error Cannot find module
, pruebe el siguiente comando antes de reiniciar el servidor.
npm install
Si eso no soluciona el problema, use el siguiente comando para quitar el directorio node_modules
y volver a instalarlo.
rm -rf node_modules
npm install
Solución de problemas de almacenamiento provisional
Si tiene problemas con el servidor de almacenamiento provisional, debería ver más información sobre el error en el explorador o en la línea de comandos si ejecuta el sitio localmente. Desproteja la rama localmente y use el siguiente comando para iniciar el servidor local.
npm start
Cuando el servidor se esté ejecutando, vaya al artículo problemático en https://localhost:4000
en el explorador. El servidor de almacenamiento provisional solo mostrará un error de "Oops", pero el servidor local debe mostrar un seguimiento de la pila para la depuración.
Si ve un error similar al siguiente, asegúrese de que las comillas simples se escapen correctamente en el texto preliminar. Además, compruebe el formato en bloques redirect_from
. Para obtener más información, vea «Usar el texto preliminar de 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:
^
Comprobación de vínculos internos
La prueba "Comprobador de vínculos: En PR" informa de los vínculos rotos en el sitio, incluidas las imágenes. Si hay vínculos rotos, se producirá un error en la prueba y la vista de detalles de la prueba mostrará errores TitleFromAutotitleError
, que simplemente notifican la dirección URL del vínculo roto o un informe más descriptivo que también muestra la página que contiene el vínculo roto.
Si el error no incluye la ubicación del vínculo roto, deberá buscar en el repositorio el vínculo roto docs
para encontrar el archivo.
Cuando busque el vínculo roto, asegúrese de que el vínculo tiene una versión correcta. Por ejemplo, si el artículo solo existe para GHES para la versión 3.8 y posteriores, asegúrese de que el vínculo tiene la versión 3.8 o posteriores.
Si un artículo que está disponible para GitHub Enterprise Server vincula a una versión diferente de GitHub.com, incluya la versión en la ruta de acceso para evitar que la dirección URL se convierta automáticamente para incluir un número de versión de GitHub Enterprise Server. En el ejemplo siguiente se muestra cómo vincular desde un artículo de GitHub Enterprise Server una versión Free, Pro y Team de un artículo.
[{{ 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/)"
Depuración local
Durante el desarrollo, puede visitar cualquier página de http://localhost:4000
y agregar ?json=page
al final de la ruta de acceso para mostrar información subyacente que puede resultar útil para la depuración. Además de información básica como título e introducción, estos son algunos campos que pueden ser útiles.
Campo | Descripción |
---|---|
productVersions | Muestra lo que el sitio analiza desde el texto preliminar de productVersions . |
permalinks | Muestra todos los vínculos permanentes que el sitio está generando para la página. |
redirect_from | Muestra los redireccionamientos codificados de forma codificada en el texto preliminar de redirect_from . |
redirects | Muestra todas las redirecciones que el sitio está generando para la página. |
includesPlatformSpecificContent | Muestra si el sitio detecta contenido específico de la plataforma en la página. |
Trabajar con procesamiento Liquid
Si el texto o el ejemplo de código incluye contenido entre corchetes ({
y }
), debe encapsularlo entre etiquetas {% raw %}
y {% raw %}
para deshabilitar el procesamiento Liquid para esa sección. Por ejemplo:
-
Use:
GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %}
-
Evitar:
GITHUB_TOKEN: $${{ secrets.GITHUB_TOKEN }}$