Страницы GitHub не обновляются

101

У меня странная проблема со страницами GitHub. Я разместил новую фиксацию на странице моих личных страниц maltzj.github.io , но новая статья там не отображается. Когда я запускаю сервер локально, пост живет по адресу localhost:4000/posts/the-price-of-inconsistent-code/. Однако, когда я перехожу на http://maltzj.github.io/posts/the-price-of-inconsistent-code, я получаю 404. Я также добавил новый файл, который должен находиться по адресу http: //maltz.github. io / test.html , но это также вызывает ошибку 404.

Все строится и работает локально. Мой репозиторий Git обновлен, и на странице состояния GitHub нет ничего о проблемах со сборками, так что я немного не понимаю, куда с этим обращаться. Как я могу заставить мою страницу обновляться новым контентом, который я добавляю?

Для справки: расположение репозитория, поддерживающего мою страницу, http://github.com/maltzj/maltzj.github.io

Джонатан
источник
«Вы пытаетесь опубликовать одну? Это может занять до десяти минут, прежде чем ваша страница станет доступной».
Aurélien Ooms,
1
Я знаю это, но коммиты публикации находились в репо более 5 часов и не отображались. Персональные страницы развертываются через мастер правильно?
Джонатан
3
для меня это было из-за того, что браузер использует кэшированные данные (старые стили), поэтому я открываю другой brwser
mohammedgqudah
Для меня это был браузер. Открытие firefox заставило его работать нормально.
dogonaroof

Ответы:

43

Ничего из этого не решило для меня. Решением было отредактировать файл index.html на сайте GitHub.

Orafaelreis
источник
3
мне то же. Изменение только одной строки в index.html заставило его "загрузить" "истинный" index.html, а не всю предыдущую фиксацию.
Мигель Вазк,
2
GitHub Pages не видел изображения, которое я вставил в последний коммит. Мне пришлось отредактировать index.html (который использует изображение), просто изменив пробел, чтобы заставить GitHub Pages начать обслуживание изображения. Я подозреваю, что он не перестраивается, пока не изменится HTML-страница.
Пол Линч,
1
Я просто добавил одно место на GitHub в index.html, и это сработало. Странная проблема.
Вольфрам
В этом есть смысл, это решение работает для меня .. В моем случае это произошло из-за того, что мое приложение было SPA, где обновления выполняются только в Javascript, а не из index.html. Опять же, я думаю, что имена файлов имеют md5sum (или что-то в этом роде) и должны измениться, если файл изменится, поэтому он также должен обновить тег скрипта index.html.
jmjm
40

Для других также проверьте даты ваших сообщений. Просто у меня была эта проблема. Я нахожусь в UTC + 11, и я почти уверен, что сервер находится в UTC. Таким образом, если я датирую свои сообщения своим местным временем, сервер думает, что они в будущем, и не будет их создавать. Использование UTC позволило мне избежать этого.

Как упоминал жоао сенура в комментариях ниже:

  • вы можете указать jekyll показывать "будущие" сообщения, добавив future: trueв свой _config.yml
  • и / или добавить, timezone: TIMEZONEчтобы указать свой часовой пояс.

См. Https://jekyllrb.com/docs/configuration/ для получения дополнительной информации.

Себастьян Кэрролл
источник
5
Ура! Это было проблемой для меня. Я опечатал название сообщения и сделал его «2016-04-14» вместо «2016-03-14». Локально он создавался отлично, но на Github его не было. Без предупреждения, просто без страницы. Спасибо!
Стив Беннетт,
1
Та же проблема. Я в UTC + 8. Я сделал сообщение с сегодняшней датой, нажал и ничего не произошло. Затем я изменил дату публикации и сделал ее вчера, публикация была опубликована очень быстро!
Гонконг,
3
То же самое для меня по UTC + 1. Еще не пробовал, но вы можете указать jekyll показывать "будущие" сообщения, добавив future: trueв свой _config.yml. Также есть TZвариант. Ссылка: jekyllrb.com/docs/configuration
joao cenoura
24

Перейдите к файлу index.html через свой сайт ( example.github.io/index.html ) и затем перезагрузите страницу. Затем вы можете вернуться к ( example.github.io ), и он должен быть обновлен. То же самое можно сделать с файлом master.css и т. Д.

Если это не сработает, попробуйте перезагрузить ( github.com/example/example.github.io/[blob/master/ providedindex.html ) вместо этого, и он будет обновлен.

Тристан Прайс
источник
10

У меня был пустой файл CNAME . Проверьте это, если у вас возникла аналогичная проблема.

Джонатан
источник
16
Не могли бы вы немного рассказать об этом? Что вам нужно было изменить, чтобы он заработал? Или вам нужно было удалить файл CNAME, который был там? Спасибо!
cxw 07
1
Мне нужно было убедиться, что файл CNAME содержит строку с доменом, который я хотел создать.
daniel-cheng
9

У меня была проблема с непроверенным адресом электронной почты. Обновление сработало впервые , но после этого не удалось. Подтвержденный адрес электронной почты необходим для запуска сборки страниц GitHub. Также для этого нельзя использовать ключ развертывания, так как он не запускает сборку.

Источник: http://web.archive.org/web/20140712011932/https://help.github.com/articles/troubleshooting-github-pages-build-failures/

Отказ от ответственности: так было в 2014 году. Не знаю, требуется ли это по-прежнему.

eis
источник
1
У меня была такая же проблема с непроверенным письмом.
midinastasurazz
Вот что мне помогло. Это также единственное упоминание об этом решении, которое я смог найти примерно через час поиска.
Giganticus
1
Ключ развертывания не запускает сборку!?!? Черт возьми. Спасибо, проголосовали за.
Доменик
1
Ссылка не работает ( «Ой! Похоже, этой страницы не существует» ).
Питер Мортенсен
@PeterMortensen заменен ссылкой на веб-архив, хотя я действительно не знаю, актуальна ли эта информация
eis
6

В моем случае ни одно из вышеперечисленных решений не работает. Наконец я выяснил причину: в моем _config.yml есть опция «relative_permalinks». Эта опция недавно устарела в Jekyll 3.0.

См. Https://help.github.com/articles/removing-relative-permalinks/

Мерцание
источник
6

Сегодня у меня была эта ошибка со статической страницей - на самом деле причиной был сбой службы на самой странице GitHub. Вы можете проверить служебные сообщения на https://status.github.com/messages .

Майк
источник
1
Я вырвал почти весь свой сайт, пытаясь уменьшить проблему с кодом - оказалось, что у github со вчерашнего дня было огромное отставание при сборке страниц - это почти 24 часа. (Github должен отметить ссылку на страницу состояния сборки на своей странице устранения неполадок. Я нашел страницу состояния только из-за ошибки 404, которая включала ссылку внизу.)
Cascadia_Mike
1
Спасибо :) Сегодня я получил «Изучение - в настоящее время изучается увеличение количества невыполненных очередей, влияющих на сборку страниц и доставку некоторых веб-перехватчиков».
Туан
Да, я тоже! @Thuan. это отстой!
Абдалла
5

Я знаю, что это может показаться простым, но убедитесь, что вы находитесь в нужной ветке и в нужном файле.

В моем случае я создал страницу GitHub и попытался выполнить коммит из локального репозитория в главной ветке. Кроме того, я обновлял свое имя файла вместо index.html . Это были мои ошибки. Мне пришлось переключиться на ветку страницы GitHub и обновить в index.html фиксацию, нажать, и тогда все заработало.

ShowLove
источник
Веселая. Этот ответ вдохновил меня на переоценку своих предположений и напомнил, что мне нужно перестроить из исходников.
jorisw
5

У меня был незакрытый <a>тег, из-за которого сборка была отложена навсегда. Исправление решило проблему.

Имеет смысл, что GitHub проверит ваши ссылки.

jns
источник
3

В моем случае случилось так, что я упомянул относительный путь для ссылки на изображение, что-то вроде - ./test.png .

Кажется, что это запрещено, и это может быть проблема безопасности или что-то в этом роде. Как бы то ни было, если вы сделали что-то подобное, удалите это и назовите test.png.

Рахул Наскар
источник
1
То же самое для меня: у меня был относительный путь в "<a href...>"
Сегал-Халеви
3

Для меня я просто ждал ~ 5 минут, и он обновился.

Если кто-то создал gh-страницы ветки с нуля (вручную), проблема в том, что вам нужен вызов файла params.json, чтобы он заработал.

У меня нет этого params.jsonфайла, но он все еще работает ...

math2001
источник
Вы можете увидеть, нужно ли Github время для создания вашего сайта или он потерпел неудачу в списке коммитов вашего репо.
Лукас
2

В моем случае я забыл определить kramdownв_config.yaml

# Build settings
markdown: kramdown

Это было вызвано тем, что я преобразовывал тему без требования к теме с kramdownтребованием.

Arewm
источник
1

В моем случае после проб и ошибок в некоторых решениях здесь исправлено добавление кодировки в файл _config, например

encoding: UTF-8

Дополнительные варианты устранения неполадок здесь

А. Ромеу
источник
1

Для меня это была проблема с отсутствием файла .gitmodules.

Мне удалось устранить неполадки на вкладке настроек моего репозитория в разделе страниц GitHub, который указывает на проблемы сборки и был полезен для устранения неполадок.

user3882631
источник
1

Как ни странно (и достаточно просто) я создал новую ветку, сделал ее ветвью «по умолчанию» и отправил ее оттуда.

Это сработало для меня.

Кевин Конклин
источник
1

В настройках репозитория убедитесь, что страницы GitHub в настоящее время собираются из gh-pagesветки.

Донг Джастин
источник
1

В моем случае проблема заключалась в том, что мой репозиторий был частным . После того, как я сделал это общественность , проблема исчезла.

Странная часть истории заключается в том, что мне удалось создать частный репозиторий и использовать с ним страницы GitHub. Я делал это в соответствии с официальным руководством ( http://take.ms/p2SS7 ). Он работал нормально около 9 коммитов, но 10-го вышел из строя.

Дэн
источник
1

На этой неделе у меня была эта проблема, и решение не помогло. Я не использую Jekyll, только чистый статический HTML. Просто просидел три дня, отказываясь обновляться.

Вот что мне нужно было сделать, чтобы снова опубликовать его.

  • Сделайте snapshotветку из master.
  • Сбросьте masterветку до последней активной фиксации. (Вкладка "Коммиты", зеленые галочки указывают на опубликованные коммиты)
  • Сделайте новый коммит с помощью дымового теста. Я сделал HTML-комментарий, который мог бы использовать grep.
  • Сила толчка master.
  • Проверить результаты curl https://example.com | grep SMOKETEST
  • masterСнова сбросил , сняв дымовой тест.
  • Выбирайте каждый коммит из snapshotветки, в которую вам нужно вернуть неопубликованные изменения master(выбор вишни дает коммитам новые идентификаторы / хэши, избегая риска того, что что-либо кэшировало их ранее).
  • masterСнова нажмите с силой .
  • Теперь у вас должны появиться зеленые галочки и опубликованные обновления.

Примечание: может быть достаточно принудительного нажатия, чтобы удалить застрявшие коммиты и вернуть их обратно. Дымовой тест почти наверняка не требуется. Сбор вишни может не потребоваться.

Мартин Вестин
источник
0

Если кто-то создал gh-страницы ветки с нуля (вручную), проблема в том, что вам нужен вызов файла params.json, чтобы он заработал.

Это пример того файла:

{
  "name": "nameOfProyect",
  "tagline": "name of proyect",
  "body": "### Welcome to GitHub Pages.\r\nThis automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:\r\n\r\n```\r\n$ cd your_repo_root\/repo_name\r\n$ git fetch origin\r\n$ git checkout gh-pages\r\n```\r\n\r\nIf you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.\r\n\r\n### Designer Templates\r\nWe've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.\r\n\r\n### Rather Drive Stick?\r\nIf you prefer to not use the automatic generator, push a branch named `gh-pages` to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.\r\n\r\n### Authors and Contributors\r\nYou can @mention a GitHub username to generate a link to their profile. The resulting `<a>` element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (@defunkt), PJ Hyett (@pjhyett), and Tom Preston-Werner (@mojombo) founded GitHub.\r\n\r\n### Support or Contact\r\nHaving trouble with Pages? Check out the documentation at https:\/\/help.github.com\/pages or contact support@github.com and we\u2019ll help you sort it out.\r\n",
  "google": "",
  "note": "Don't delete this file! It's used internally to help with page regeneration."
}
Роберто Фернандес Диас
источник
0

В моем случае у меня был другой файл с таким же файлом permalinkна странице, содержимое которой не обновлялось. Обратите на это внимание.

Адельсон Араужо
источник
0

Проверьте статус сборки gh-страниц во вкладке настроек.

Your site is having problems building: Unable to build page.

Если вы используете github_token, возможно, у него нет разрешения на создание gh-страниц, поэтому вы можете увидеть предупреждение на вкладке настроек. Вот почему редактирование index.html может работать. В этом случае используйте access_token или фиксацию на основе ssh для автоматической загрузки и создания gh-страниц.

kamalkishor1991
источник
0

В моем случае это был неправильный синтаксис kramdown . Мой код был

  {% highlight %}
  lorem lipsum
 {% endhighlight %}

По-видимому, вы должны указать кратковременный язык:

  {% highlight html %}
  lorem lipsum
 {% endhighlight %}
Quannt
источник
0

Мои страницы GitHub были отключены на вкладке настроек репозитория.

Я не помню, как выключал его, но вот оно, и включение снова было решением.

Джейсон
источник
0

В моем случае было две проблемы (одна «пебчак», а затем более актуальная).

У меня было два адреса электронной почты, настроенных в GitHub, и я проверял неосновной адрес электронной почты на наличие сообщений об ошибках сборки (для управления электронной почтой: войдите в GitHub, щелкните меню пользователя в правом верхнем углу, выберите «Настройки», а затем «Электронная почта» в left menu - сообщения об ошибках сборки будут приходить на основной адрес электронной почты).

Как только я увидел сообщения об ошибках, я обнаружил, что добавил описание, включая символ «:» в моем, _config.yamlи, поскольку этот символ используется для разделения key,valueпар, он мешал созданию сайта.

Floella
источник
0

У меня была такая же проблема, но в моем случае CNAME содержало правильное доменное имя.

Я думаю, проблема как-то связана с переименованием репозитория, которое я делал раньше ... Онлайн-имя отличалось от локального, хотя при загрузке не было проблем, и онлайн-файлы обновлялись - в живой версии этого не было.

После удаления репозитория с локального компьютера и повторного клонирования его с GitHub проблема была решена.

Мытко Энко
источник
0

На мой взгляд, страницы GitHub опаздывают с одного коммита. Это означает, что если вы хотите его обновить, добавьте любую модификацию в свой источник, зафиксируйте и нажмите.

Такое поведение применимо только к ветке gh-pages и репозиторию any.github.io . В папке «docs» изменения применяются напрямую.

парижский
источник
0

В моем случае проблема возникла после того, как git pushмой файл GitHub обновлялся, но мой сайт не отображался на страницах GitHub.

Примечание: я создавал сайт на React.

Кроме того, в проекте HTML я столкнулся с той же проблемой. В этом случае я просто сделал сначала, git pullа потом git status | git add . | git commit -m"adding some content" | and git push. У меня это сработало.

Но в системе React projectэто не сработало. Я снова запускаю это на своем cmd, npm run deployтогда мое веб-приложение React отображается на страницах GitHub.

Я предлагаю попробовать все, что показано в комментариях к этому посту. Потому что решение этой проблемы не одно.

Md. Rana
источник
С помощью response вы должны сначала создать проект с помощью npm run buildили, yarn buildа затем нажать в build/папку страниц github . Или вы можете получить к нему доступ по ссылке yournickname.github.io/yourproject/build(если вы удалите build/из .gitignore)
flppv
Для отображения веб-сайта реакции на страницах GitHub я использовал этот метод github.com/gitname/react-gh-pages, и он сработал.
Md. Rana
0

В моем случае я оставил пустой параметр,, urlв _config.yaml.

После того, как я уточнил, url: example.github.ioвсе заработало.

Алексей Медвещек
источник
0

Я использовал git commit -am "blah"и забыл, что _data/navigation.yamlбыли изменены только мои навигационные ссылки , а новое, page.mdкоторое я создал, не было добавлено в рабочее дерево, поэтому показывала мне ошибку 404, когда я нажимал на ссылку в навигационном дереве.

Проверьте, проверьте еще раз!

клоунчеловек
источник