GitHub页面没有更新

147
我在使用 GitHub Pages 时遇到了奇怪的问题。我将一个新提交推送到我的个人页面 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

"您正在尝试发布一个页面吗?可能需要最多十分钟才能使您的页面可用。" - Mmmh mmh
4
我知道,但是提交的出版物已经在仓库中超过5个小时了,但并没有显示出来。个人页面通过主分支部署,对吗? - Jonathan
6
对我来说,这是因为浏览器使用了缓存数据(旧样式),所以我打开了另一个浏览器。 - mohammedgqudah
对我来说,这是浏览器的问题。打开火狐浏览器后,它就正常工作了。 - dogonaroof
2
使用Ctrl+Shift+R来强制刷新页面对我很有帮助,因为这样可以清除浏览器最初使用的缓存数据。 - AbtabM
2
你可以在一个空提交上触发重建。git commit --allow-empty -m "Trigger rebuild" 然后 git push。参考:https://dev59.com/CWgu5IYBdhLWcg3wGjdF#45907768 - Jovial Joe Jayarson
48个回答

4

对我而言,我只需要等待约5分钟,然后它就会更新。

如果有人手动从头创建了分支gh-pages,则问题是您需要一个名为params.json的文件才能使其正常工作。

我没有这个params.json文件,但它仍然可以正常工作...


您可以在您的存储库提交列表中查看Github是否仍需要时间来构建您的网站,或者它是否失败。 - Lukas

4
在我的情况下,问题是因为我的存储库是私有的。在我将其设为公共后,问题消失了。
奇怪的是,我能够创建私有存储库并使用GitHub页面。我按照官方指南(参见guidehttp://take.ms/p2SS7))进行操作。它在大约9个提交中运行良好,但在第10个提交时变得不稳定。

1
谢谢。我的问题是GitHub Pages根本没有自动部署。我尝试了多种方法,如清空缓存、推送空提交等,但都没有起作用。将私有更改为公共立即触发了自动部署。 - tonyminhnguyen

3
在我的情况下,我提到了一个相对路径来引用一张图片,类似于 - ./test.png
看起来这是不允许的,可能是一个安全问题或其他原因。不管怎样,如果你做了类似的事情,请将其移除并将其引用为test.png

1
和我一样:我在“<a href...>”中使用了相对路径。 - Erel Segal-Halevi

3
我今天遇到了同样神秘的问题。我把一些新代码推送到了我的github.io仓库,但相应的网页没有显示出更改。我检查了页面,没有在源代码中看到新的代码。我通过进行强制重新加载来解决了这个问题。在Chrome浏览器上,您可以打开“开发工具”,右键单击刷新按钮并选择“硬性重新加载”来进行强制重新加载。

2
在 Chrome 中,您可以使用“Ctrl+Shift+R”进行强制刷新。 - AbtabM

2

2
  1. 确保你运行了npm run deploy

  2. 清除浏览器缓存。


2
在我的情况下,我忘记在_config.yaml中定义kramdown
# Build settings
markdown: kramdown

这是由于我从一个不需要 kramdown 的主题转换到了一个需要 kramdown 的主题时引起的。


1
在我的情况下,在这里尝试了一些解决方案之后,修复它的方法是像这样将编码添加到_config文件中。
encoding: UTF-8

更多故障排除选项 在这里

1
我本周遇到了这个问题,但没有任何解决方法有效。我不使用Jekyll,只用纯静态HTML。它坚持三天不更新。
以下是我必须执行的步骤才能再次发布:
1.从master分支创建一个“快照”分支。 2.将主分支重置为最后一个已发布的提交。(提交选项卡,绿色勾号表示已发布的提交) 3.进行烟雾测试的新提交。我做了一个可以grep的HTML注释。 4.强制推送主分支。 5.检查结果curl https://example.com | grep SMOKETEST 6.再次重置主分支,删除烟雾测试。 7.从“快照”分支挑选每个提交,以便将未发布的更改重新引入主分支(cherry-picking给予提交新的id /哈希值,避免任何缓存之前的风险)。 8.再次强制推送主分支。 9.现在您应该会看到绿色的勾号和发布的更新。
注意:强制推送可能足以删除卡住的提交并将它们重新获取。几乎肯定不需要进行冒烟测试。可能不需要挑选。

1
如果我直接在GitHub网站上编辑和提交文件,GitHub就不会为我发布到GitHub页面。但是,如果我本地编辑文件并使用GitHub桌面版进行提交,那么更改将在几秒钟内发布到网站。顺便说一句,我的电子邮件已经验证过了,所以这不应该是个问题。而且我正在使用同一个账户。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接