Chaque référentiel GitHub peut avoir ( ou être ) un site Web GitHub Pages , qui peut être créé avec Jekyll. GitHub construit le site chaque fois que vous envoyez un nouveau commit.
Existe-t-il un moyen de forcer l'actualisation du site Web Github Pages sans pousser un nouveau commit?
github-pages
Pierre Prinetti
la source
la source
Réponses:
Depuis le support GitHub, 07/06/2014:
Éditer:
Comme Andy l'a souligné dans les commentaires, vous pouvez pousser un commit vide avec la commande:
Modifier 2:
Grâce aux actions GitHub, il est assez facile de déclencher une publication quotidienne: https://stackoverflow.com/a/61706020/4548500 .
la source
git log
Si vous voulez une solution de script rapide, la voici. Effectuez les tâches suivantes une seule fois et exécutez le script chaque fois que vous souhaitez reconstruire votre page GitHub.
1. Créez un jeton d'accès personnel pour la ligne de commande:
Settings > Developer settings > Personal access tokens > Generate new token
.repo
portée.2. Créez le script suivant:
Créez un fichier appelé
RebuildPage.sh
et ajoutez les lignes:Ici,
yourname
par votre nom d'utilisateur GitHub.yourtoken
par votre jeton d'accès personnel copié.yourrepo
par le nom de votre référentiel.3. Exécutez le script:
Si vous utilisez Windows 10:
#!/bin/bash
) du script et enregistrez le script sousRebuildPage.bat
. (c.-à-d. remplacer.sh
par.bat
dans le nom du fichier de script)Alternative au point ci-dessus: pour obtenir la fonction de double-clic pour exécuter le
.sh
fichier:bash.exe
comme programme par défaut pour les.sh
fichiers.Ouvrez
regedit.exe
et modifiezHKEY_CLASSES_ROOT\Applications\bash.exe\shell\open\command
. Définissez la(Default)
valeur sur:Maintenant, double-cliquez sur le script lorsque vous souhaitez reconstruire votre page GitHub. Terminé!
Si vous utilisez Linux / Mac, l'exécution du script est identique à l'exécution d'autres scripts. Terminé!
Notes supplémentaires pour la solution:
Cette solution utilise une API de GitHub REST API v3. Voici la documentation officielle de l'API.
la source
J'ai eu ce problème pendant un moment, et pousser vers la branche principale n'a rien changé sur
myapp.github.io
, pour deux raisons:1 - Construire
Peu importe combien de fois j'ai essayé de pousser mon travail sur master, la construction ne démarrait pas. J'ai trouvé une solution de contournement en modifiant mon fichier dans l'éditeur en ligne de Github (ouvrez votre index.html et modifiez-le sur le site Web de Github, puis validez)
2 - Problèmes de mise en cache
Même après une construction réussie, je verrais toujours exactement la même page
myapp.github.io
, et un rechargement dur avecCtrl + Shift + R
ne résoudrait pas le problème. Au lieu de cela, si vous utilisez Chrome, inspectez votre page, allez dans l'Application
onglet, sélectionnez "Effacer le stockage" dans le menu de gauche, puis cliquez sur "Effacer les données du site" en bas du menu.la source
Maintenant que les actions GitHub sont disponibles, c'est facile à faire:
Exemple de dépôt qui fait cela: https://github.com/SUPERCILEX/personal-website/actions
API Pages: https://developer.github.com/v3/repos/pages/#request-a-page-build
la source
Même après avoir poussé mes modifications dans le référentiel GitHub, je n'ai pas pu voir les modifications aujourd'hui. Ensuite, j'ai vérifié les paramètres de mon référentiel pour plus d'informations, là je pouvais voir, toutes ces fois la construction échouait et c'était la raison pour laquelle je ne pouvais pas voir les changements.
Le message suivant peut également s'afficher: "Votre site rencontre des problèmes de création: impossible de créer la page. Veuillez réessayer plus tard."
Ensuite, j'ai vérifié mes récents commits et j'ai essayé de trouver la cause de ce problème. À la fin, j'ai pu résoudre le problème.
Il y avait une virgule supplémentaire dans les balises (,) et cela a causé ce problème .
Vous n'obtiendrez pas de messages d'erreur pertinents s'il y a des problèmes dans votre fichier .md. Je vous recommande de vérifier l'état de la construction et de comparer les modifications si vous rencontrez le même problème.
la source
Le commit vide n'a pas fonctionné pour moi, mais basé sur la réponse @benett, cela a fonctionné pour moi:
Ouvrez Postman, créez une nouvelle requête avec cette URL: https://api.github.com/repos/[user_name </font>/ [ repo_name </font>/ pages / builds (remplacez par votre nom et votre dépôt), et sélectionnez la méthode POST.
Avant de l'exécuter, accédez à l'
headers
onglet et ajoutez une nouvelle cléAccept
avec la valeurapplication/vnd.github.mister-fantastic-preview+json
Vous pouvez maintenant l'exécuter et visiter à nouveau vos pages.
la source
{ "message": "Not Found", "documentation_url": "https://developer.github.com/v3/repos/pages/#request-a-page-build" }
. Peut-être parce que mon repo est privé?C'est faisable à partir de la v3 de l'API GitHub
, bien qu'elle soit actuellement en préversionhttps://developer.github.com/v3/repos/pages/#request-a-page-buildla source
Solution alternative
Vous avez peut-être reçu un e-mail de GitHub vous informant que Jekyll n'a pas réussi à créer votre site lorsque vous l'avez poussé vers votre
gh-pages
. Si tel est le cas, vous pouvez essayer de forcer le push pour déclencher une autre compilation.Si vous utilisez un dossier dédié pour le site Web final, disons un
public
dossier, vous pouvez essayer de reconstruire votre dossier et d'ajouter le dossier à vos modifications validées. Après cela, vous devrez diviser ces fichiers dans votregh-pages
branche et les forcer à déclencher une autre compilation même si les fichiers n'ont pas du tout changé. Le reste du code ci-dessous supprime simplement les validations dupublic
dossier pour plus de commodité et les supprime du système de fichiers local.Code
Conseils
S'il y a des modifications non validées qui ne font pas partie du site final, vous pouvez les cacher avec la commande suivante.
Ensuite, exécutez la commande ci-dessus pour forcer manuellement la construction de Jekyll et les désinstaller.
Références
la source