В каждом репозитории GitHub может быть ( или быть ) веб-сайт GitHub Pages , который можно создать с помощью Jekyll. GitHub создает сайт каждый раз, когда вы нажимаете новый коммит.
Есть ли способ принудительно обновить веб-сайт Github Pages без добавления новой фиксации?
github-pages
Пьер Принетти
источник
источник
Ответы:
Из службы поддержки GitHub, 2014-06-07:
Редактировать:
Как отметил Энди в комментариях, вы можете нажать пустую фиксацию с помощью команды:
Изменить 2:
Благодаря действиям GitHub довольно легко запустить ежедневную публикацию: https://stackoverflow.com/a/61706020/4548500 .
источник
git log
Если вам нужно быстрое решение сценария, вот оно. Просто выполните следующие задачи только один раз и запускайте скрипт всякий раз, когда захотите перестроить страницу GitHub.
1. Создайте личный токен доступа для командной строки:
Settings > Developer settings > Personal access tokens > Generate new token
.repo
область действия.2. Создайте следующий сценарий:
Создайте файл с именем
RebuildPage.sh
и добавьте строки:Вот,
yourname
на свое имя пользователя GitHub.yourtoken
на свой скопированный токен личного доступа.yourrepo
на имя вашего репозитория.3. Запускаем скрипт:
Если вы используете Windows 10:
#!/bin/bash
) из сценария и сохраните сценарий какRebuildPage.bat
. (т.е. заменить.sh
на.bat
в имени файла сценария)Альтернатива вышеупомянутому пункту: Чтобы получить возможность двойного щелчка для запуска
.sh
файла:bash.exe
как программу по умолчанию для.sh
файлов.Открыть
regedit.exe
и отредактироватьHKEY_CLASSES_ROOT\Applications\bash.exe\shell\open\command
. Установите(Default)
значение:Теперь дважды щелкните скрипт, даже если вы хотите перестроить страницу GitHub. Готово!
Если вы используете Linux / Mac, запуск сценария такой же, как и запуск других сценариев. Готово!
Дополнительные примечания к решению:
Это решение использует API GitHub REST API v3. Вот официальная документация по API.
источник
Некоторое время у меня была эта проблема, и нажатие на главную ветку ничего не изменило на
myapp.github.io
двум причинам:1 - Сборка
Сколько бы раз я ни пытался подтолкнуть свою работу к мастеру, сборка не запускалась. Я нашел обходной путь, изменив свой файл в онлайн-редакторе Github (откройте свой index.html и отредактируйте его на веб-сайте Github, затем зафиксируйте)
2 - Проблемы с кешированием
Даже после успешной сборки я все равно видел бы ту же страницу
myapp.github.io
, и жесткая перезагрузкаCtrl + Shift + R
не решила бы этого. Вместо этого, если вы используете Chrome, проверьте свою страницу,Application
перейдите на вкладку, выберите «Очистить хранилище» в левом меню и нажмите «Очистить данные сайта» в нижней части меню.источник
Теперь, когда доступны действия GitHub, сделать это просто:
Пример репозитория, который делает это: https://github.com/SUPERCILEX/personal-website/actions
API страниц: https://developer.github.com/v3/repos/pages/#request-a-page-build
источник
Даже после того, как я отправил свои изменения в репозиторий GitHub, я не смог их увидеть сегодня. Затем я проверил настройки своего репозитория для получения дополнительной информации, там я мог видеть, все это время сборка давала сбой, и это было причиной, по которой я не мог увидеть изменения.
Вы также можете увидеть сообщение: «У вашего сайта проблемы с построением: невозможно создать страницу. Повторите попытку позже».
Затем я проверял свои последние коммиты и пытался выяснить, что вызывает эту проблему. В конце концов я смог исправить проблему.
В тегах (,) была дополнительная запятая, что вызывало эту проблему .
Вы не получите соответствующих сообщений об ошибках, если в вашем .md файле есть какие-либо проблемы. Я рекомендую вам проверить статус сборки и сравнить изменения, если вы столкнулись с той же проблемой.
источник
Пустая фиксация не сработала для меня, но на основе ответа @benett это сработало для меня:
Откройте Postman, создайте новый запрос с этим URL-адресом: https://api.github.com/repos/[user_namepting/[repo_name ]/ pages/ builds (замените своим именем и репо) и выберите метод POST.
Перед тем как запустить его, перейдите на
headers
вкладку и добавьте новый ключAccept
со значениемapplication/vnd.github.mister-fantastic-preview+json
Теперь вы можете запустить его и снова посетить свои страницы.
источник
{ "message": "Not Found", "documentation_url": "https://developer.github.com/v3/repos/pages/#request-a-page-build" }
. Может потому, что мое репо частное?Это возможно с v3 API GitHub
, хотя в настоящее время он находится в предварительной версииhttps://developer.github.com/v3/repos/pages/#request-a-page-build.источник
Альтернативное решение
Возможно, вы получили электронное письмо от GitHub, в котором говорилось, что Jekyll не удалось создать ваш сайт, когда вы разместили его на своем
gh-pages
. В этом случае вы можете попытаться принудительно запустить новую сборку.Если вы используете специальную папку для окончательного веб-сайта, скажем,
public
папку, вы можете попытаться перестроить свою папку и добавить ее в свои зафиксированные изменения. После этого вам нужно будет разделить этот файл на своюgh-pages
ветку и заставить их запускать другую сборку, даже если файлы вообще не изменились. Остальная часть кода ниже просто удаляет коммиты дляpublic
папки для удобства и удаляет ее из локальной файловой системы.Код
подсказки
Если есть незавершенные изменения, которые не являются частью окончательного сайта, вы можете спрятать их с помощью следующей команды.
Затем выполните указанную выше команду, чтобы вручную принудительно выполнить сборку Jekyll и распаковать их.
Ссылки
источник