Cada repositorio de GitHub puede tener ( o ser ) un sitio web de páginas de GitHub , que se puede construir con Jekyll. GitHub crea el sitio cada vez que envías una nueva confirmación.
¿Hay alguna forma de forzar la actualización del sitio web de Github Pages sin presionar una nueva confirmación?
github-pages
Pierre Prinetti
fuente
fuente
Respuestas:
Desde el soporte de GitHub, 2014-06-07:
Editar:
Como Andy señaló en los comentarios, puede enviar una confirmación vacía con el comando:
Edición 2:
Gracias a las acciones de GitHub, es bastante fácil activar una publicación diaria: https://stackoverflow.com/a/61706020/4548500 .
fuente
git log
Si desea una solución de secuencia de comandos rápida, aquí está. Simplemente realice las siguientes tareas solo una vez y ejecute el script siempre que desee reconstruir su página de GitHub.
1. Cree un token de acceso personal para la línea de comando:
Settings > Developer settings > Personal access tokens > Generate new token
.repo
alcance.2. Cree el siguiente script:
Cree un archivo llamado
RebuildPage.sh
y agregue las líneas:Aquí,
yourname
con su nombre de usuario de GitHub.yourtoken
con su token de acceso personal copiado.yourrepo
con el nombre de su repositorio.3. Ejecute el script:
Si usa Windows 10:
#!/bin/bash
) del script y guárdelo comoRebuildPage.bat
. (es decir, reemplace.sh
con.bat
en el nombre del archivo de script)Alternativa al punto anterior: Para obtener la función de doble clic para ejecutar el
.sh
archivo:bash.exe
como programa predeterminado para.sh
archivos.Abrir
regedit.exe
y editarHKEY_CLASSES_ROOT\Applications\bash.exe\shell\open\command
. Establezca el(Default)
valor en:Ahora haz doble clic en el script cuando quieras reconstruir tu página de GitHub. ¡Hecho!
Si usa Linux / Mac, ejecutar el script es lo mismo que ejecutar otros scripts. ¡Hecho!
Notas adicionales para la solución:
Esta solución utiliza una API de GitHub REST API v3. Aquí está la documentación oficial de la API.
fuente
Tuve este problema por un tiempo, y presionar a la rama maestra no cambió nada
myapp.github.io
, por dos razones:1 - Construir
No importa cuántas veces intenté impulsar mi trabajo en el maestro, la compilación no comenzaba. Encontré una solución modificando mi archivo en el editor en línea de Github (abra su index.html y edítelo en el sitio web de Github, luego confirme)
2 - Problemas de almacenamiento en caché
Incluso después de una compilación exitosa, seguiría viendo exactamente la misma página
myapp.github.io
y una recarga duraCtrl + Shift + R
no lo resolvería. En cambio, si usa Chrome, inspeccione su página, diríjase a laApplication
pestaña, seleccione "Borrar almacenamiento" en el menú de la izquierda y haga clic en "Borrar datos del sitio" en la parte inferior del menú.fuente
Ahora que las acciones de GitHub están disponibles, es trivial hacer esto:
Repositorio de muestra que hace esto: https://github.com/SUPERCILEX/personal-website/actions
API de páginas: https://developer.github.com/v3/repos/pages/#request-a-page-build
fuente
Incluso después de enviar mis cambios al repositorio de GitHub, no pude ver los cambios hoy. Luego revisé la configuración de mi repositorio para obtener más información, allí pude ver, todas estas veces la compilación estaba fallando y esa fue la razón por la que no pude ver los cambios.
También puede ver un mensaje como "Su sitio tiene problemas para crear: no se puede crear la página. Vuelva a intentarlo más tarde".
Luego revisé mis confirmaciones recientes e intenté averiguar qué causa este problema. Al final pude solucionar el problema.
Había una coma adicional en las etiquetas (,) y eso causó este problema .
No recibirá mensajes de error relevantes si hay algún problema en su archivo .md. Le recomiendo que verifique el estado de la compilación y compare los cambios si enfrenta el mismo problema.
fuente
La confirmación vacía no funcionó para mí, pero según la respuesta de @benett, esto funcionó para mí:
Abra Postman, cree una nueva solicitud con esta URL: https://api.github.com/repos/[user_name]/[repo_name]/pages/builds (reemplace con su nombre y repositorio), y seleccione el método POST.
Antes de ejecutarlo, vaya a la
headers
pestaña y agregue una nueva claveAccept
con el valorapplication/vnd.github.mister-fantastic-preview+json
Ahora puede ejecutarlo y visitar sus páginas nuevamente.
fuente
{ "message": "Not Found", "documentation_url": "https://developer.github.com/v3/repos/pages/#request-a-page-build" }
. ¿Quizás porque mi repositorio es privado?Esto es posible a partir de la versión 3 de la API de GitHub
, aunque actualmente se encuentra en versión preliminarhttps://developer.github.com/v3/repos/pages/#request-a-page-buildfuente
Solución alternativa
Es posible que haya recibido un correo electrónico de GitHub que le dice que Jekyll no logró construir su sitio cuando lo envió a su
gh-pages
. Si este es el caso, puede intentar forzar el empuje para activar otra compilación.Si usa una carpeta dedicada para el sitio web final, digamos una
public
carpeta, puede intentar reconstruir su carpeta y agregar la carpeta a sus cambios confirmados. Después de eso, deberá dividir esos archivos en sugh-pages
rama y obligarlos a activar otra compilación incluso si los archivos no cambiaron en absoluto. El resto del código a continuación simplemente elimina las confirmaciones de lapublic
carpeta por conveniencia y lo elimina del sistema de archivos local.Código
Consejos
Si hay cambios no comprometidos que no forman parte del sitio final, puede guardarlos con el siguiente comando.
Luego, ejecute el comando anterior para forzar manualmente la compilación de Jekyll y deshacerse de ellos.
Referencias
fuente