为什么我的 GitHub 页面不更新它的内容?

我一直在跟踪 官方指南@ pages.github.com

到目前为止,我已经创建了本地回购协议并将其推送到 GitHub,但是,无论我做什么改变,我都可以在 GitHub 的回购协议中看到它,而在 GitHub 页面中看到 没有。这怎么可能?

120673 次浏览

有时这种情况也发生在我身上: 在创建和推送 gh-pages之后,GitHub 页面丢失或者没有得到更新。即使我向分支提交更多更改并再次推送它,它也不会在 GitHub 页面上更新。

如果我没记错的话,我解决这个问题的方法是从服务器上删除分支,然后再次推送它:

git push origin :gh-pages
git push origin gh-pages

我可能需要添加一些虚拟提交并再次推动触发更新,我不太记得了..。

我试了 雅诺斯的的答案,但它不适合我。

我对 index.html文件做了一个小小的更改(一些无关紧要的内容) ,然后再次推送到 gh-pages 分支。我试着用不同的浏览器打开这个页面,它起作用了。我原来的浏览器也更新了页面,虽然我不认为这是一个浏览器缓存问题。

我在本地使用 gh- 页面重新设置 master 的基础,同时也推送了它,不确定这是否有任何不同。

以下是对我有效的方法:

第一步(更新你的主人) :

git add .


git status                # to see the changes to be committed


git commit -m "comments"


git push origin master

第二步(更新 gh- 页面) :

git-checkout gh-pages     # going to the gh-pages branch


git rebase master         # sync gh-pages with master


git push origin gh-pages  # commit changes to gh-pages


git checkout master       # return to the master

我也有同样的问题。

问题在于,我的网站是从 gh- page 分支发布的,但是我将最近的更改推送到主分支。

检查 Github 是从哪个分支发布你的网站的。在存储库中,单击“设置”,向下滚动页面,应该有一个框,您可以在其中更改发布分支。

它应该是这样的:

更多信息是 给你

另外,如果您使用的是自定义域名,请确保您的 CNAME 文件是最新的。

希望能帮上忙!

当文件名包含单词“厂商”ex. : vendor.bundle.20d44fcf5147c6ed68a3.js时,遇到了这个问题

在存储库的根目录中添加一个名为 .nojekyll的空文件解决了这个问题。

Jekyll 现在默认忽略 vendornode_modules目录 Https://github.com/blog/2277-what-s-new-in-github-pages-with-jekyll-3-3

我解决了这个问题。

你可以试着进入设置页面。

我进入项目设置页面(.../sets/pages) ,发现 Github 页面给我一些信息“一些语法错误”,我修复了它,好了。

来解决这个问题

  1. 将当前的 GithubPages 分支切换到其他分支,然后单击 在 Save频道
  2. 切换回您想要的 GithubPages 分支,然后单击 Save

这将迫使 Github 更新您的更改。

有点晚了,但我只是有这个问题,我的解决方案不涵盖任何上述。

具体来说,我的问题是:

  • 我用一个自定义域创建了一个 github.pages 站点。
  • 我正在推送对 正确 GitHub 分支的提交,但是没有看到 GitHub.pages 站点上的更新。

解决方案: 问题原来是我的浏览器缓存页面(尽管我已经禁用了页面缓存)。为了解决这个问题,我只是清除了过去一个小时中的缓存数据,这个方法很快就起作用了。

要清除 Chrome 中的缓存数据,请转到 Chrome 菜单,然后转到 More Tools > Clear Browsing Data

我不知道是什么导致了缓存,这个 github.pages/自定义域组合是唯一导致我缓存的东西。

尝试禁用 GitHub 页面,并在几分钟后启用它。我尽力了。这个管用。但是更新和重新启用 GitHub 页面需要一些时间。

我遇到了同样的问题,我的存储库中的所有东西都是最新的,但是它仍然没有加载到我的 github 页面,所以我没有做任何进一步的更改,而是尝试添加、提交和拉取。

我用另一个 git 提交修复了它,然后再次使用 git pull。 现在更改已加载到我的 git。

清空浏览器的缓存。 例如,用于 Chrome 的 ctrl + shift + r

在对脚本进行更改之后,转到提交更改部分。在那里你会发现一个输入框和一个文本区域。众所周知,填写这些表格并不是强制性的,但它们的存在是有原因的。因此,下次在点击提交更改按钮之前,请尝试 > > 确保您在第一个输入框中写了一些内容(您可以保留文本区域为空) ,并且您所写的内容与您上次为同一文件提交时所写的内容不同。通过这种方式,github 将能够区分当前脚本和更新后的脚本,并且更改应该几乎立即得到反映。

希望能帮上忙。

试着像这样推送空提交

$ git commit --allow-empty -m "Empty commit"

每次对我都很有效。

最简单的方法:

设置-> 分支-> 选择“ gh- 页面”-> 更新。

以我的为例

对我来说,它有助于运行:

Npm 运行部署

在将主分支推送到 GitHub 之后,我做到了这一点。我需要等待一段时间,直到更改在页面上可见。但它确实在不改变任何设置的情况下工作。

我是一个新手,请允许我以泪回答。请转到 存储库中的设置,向下滚动到 < img src = “ https://i.stack.imgur.com/JJ2tj.png”alt = “ enter image description here”> < img src = “ https://i.stack.imgur.com/JJ2tj.png”alt = “ enter image description here”> 检查 你现在的网页是否有问题如果有问题,您的网站将不会被更新.我觉得这是个保护机制什么的。

今天早上我删除并移动了存储库中的一些文件,我已经更新了很多次,它仍然保留在以前的版本中,甚至我检查了 index.html 确实已经更新。后来我关闭了整个存储库并开始新的存储库,一个接一个地插入项目,但仍然遇到了问题。我尝试了 像 Gh-Pages 这样的新分支,我认为它是像我这样的初学者的 没必要。后来我检查了我的设置,发现了通知,我删除了有问题的文件,它立即工作。如果我知道这个问题,我就不会蠢到永远关闭它。我想念我的旧档案。看来每一堂课都要付出代价,Github 也不例外。

最近我遇到了一个问题,我的 github 页面托管站点没有从 master的旧分支推送中更新。通过访问 domain.com.(最后的点很重要) ,我可以看到新的更改,而且硬刷新会显示新的更改,但是通过定期刷新,它也会显示旧站点和旧 JS 文件。

我的问题似乎只出在 Chrome 上,而这正是我开发网站的地方。全面披露,旧的变化是在反应和主办在 Netlify。我试图推送和显示的新更改是托管在 github 页面中的静态文件。

THE FIX (in Chrome) : devtools > Application > clear site data (按钮)。

以防这对其他人有帮助。

对我来说,问题是分支中的内容正在更新,但是文件名没有改变,所以浏览器正在检索缓存的内容。

我使用角度 CLI 和 角度-角度-角度-角度。将配置设置为 production 将在生成中的每个文件之后添加散列,从而强制浏览器检索新内容。

示例部署脚本:

ng build --configuration=production --base-href \"<repo-name>\" && ngh

如果不需要生产构建,还可以在 angular.json中的其他构建配置中指定输出散列

如果使用 gh-pages命令,可能需要删除 node_modules/gh-pages/.cache处的 gh-pages缓存

这个问题是由于浏览器缓存页面造成的。以隐身模式打开 git 链接

问题是由于浏览器缓存页面造成的。 使用元 HTML 标记禁用浏览器缓存

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />

警告: 此后,任何支持 Cache-Control的浏览器将不会存储任何 cookie 或文件。

这个答案适用于那些用 创建-反应-应用程序创建应用程序的人

我花了好几天才找到答案,为反应高-网页没有更新。我希望下面的答案能像对我一样有帮助。这是我研究过的多个答案的组合:

主要和最常见的原因是浏览器的缓存特性。为了对 index.html 的每次呈现禁用它,

  1. 在公用文件夹下的 index.html 文件中添加这个代码片段。

<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>

  1. 将任何新的更改推送到主分支或主分支(而不是原始 gh- 页面)。
  2. 现在您的主分支已更新。
  3. 现在运行: git push origin :gh-pages。这将删除 gh-pages 分支。
  4. 运行: npm run deploy。这将重新构建您的应用程序并重新创建 gh- 页面分支 更新内容。
  5. 现在进入应用程序回购页面右上角的设置部分。向下滚动到底部。在 GithubPages 部分下,在 source 部分下,有一个分支部分。把它改成主分支或主分支。保持根文件夹的原样。
  6. 转到您的站点,您将看到一个自述文件。可能需要点时间。过一分钟左右,将分支更改为 gh- 页面。一分钟后访问您的网站,它应该是现在更新。

我希望这有所帮助! 让我知道如果它对你的评论部分也工作,干杯!

如果你的 GitHub 页面是私有的,并且你最近已经降级为免费的 GitHub 页面,这可能适用于:

您的订阅 GitHub Free 不支持 GitHub 页面站点 在我们引入了免费的私有存储库之后 在一月份的时候,我们发现只有有限的几个站点连接 私有存储库被错误地激活了。如果你想 继续更新此站点,您可以将其存储库公开或升级 你也可以在下面取消发布 自定义 CNAME: 在取消发布此站点之前保护您的域名。

在本地提交之后,我在部署的 GitHub 存储库中反映了我的更改,方法是重命名我的 gh-pages 分支以掌握和取消发布我的 GitHub Page,然后将分支重命名为 gh-pages,然后再次发布它; 然后它就可以工作了。

ctrl + F5重新下载缓存内容。

在我的案例中,它与我的配置文件中的一个问题有关。enter image description here

如果您的页面在线,但更新后没有可见的更改:

1: 将存储库更改为 二等兵

2: 变回 公众人士

3: 再次启用“ GitHub 页面”函数

一对夫妇提到在 Settings-> Pages 中寻找错误消息,但是更好的地方是在 About 选项卡下的 jekyll 构建工作流的 stdout。在任何一种情况下,在开始处理上面给出的其他26个答案之前,最好先准备一个任何类型的错误消息。

对于那些发现上述解决方案无用的人,试试这个:

  • 删除本地计算机上的“ build”目录
  • 运行“ npm run department” 删除目录帮助我,它会反映在 github 网页分支的变化,然后等待一分钟,如果你仍然没有看到任何变化,尝试清除缓存或访问您的网页隐姓埋名

对我有用。