问题是我的GitHub页面没有更新其内容

时间:2014-07-12 12:51:46

标签: github github-pages

我一直关注这个instructions

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

24 个答案:

答案 0 :(得分:21)

有时这种情况也发生在我身上:创建并推送gh-pages后,GitHub页面页面丢失或没有更新。即使我对分支进行了更多更改并再次推送它,它也不会在GitHub页面上更新。

如果我没记错的话,我通过从服务器删除分支并再次推送它来解决这个问题:

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

我可能需要添加一些虚拟提交并再次按下以触发更新,我不记得确切...

答案 1 :(得分:14)

我有同样的问题。

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

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

应该如下所示:

更多信息是here

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

希望有所帮助!

答案 2 :(得分:14)

我解决了这个问题。

您可以尝试转到设置页面。

我进入项目设置页面,发现Github页面给我一些消息“一些语法错误”,我修复了它,然后确定。

答案 3 :(得分:10)

派对有点晚了,但我刚刚遇到了这个问题,我的解决方案不在上述任何一个范围内。

具体来说,我的问题如下:

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

<强>解决方案: 问题原来是我的浏览器缓存页面(尽管我禁用了页面缓存)。为了解决这个问题,我刚刚清除了过去一小时的缓存数据,并立即生效。

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

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

答案 4 :(得分:5)

当文件名包含单词“vendor”ex。:vendor.bundle.20d44fcf5147c6ed68a3.js

时遇到此问题

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

  

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

答案 5 :(得分:4)

尝试禁用GitHub页面,并在几分钟后启用它。我试过了。这有效。但是更新并重新启用GitHub页面需要一些时间。

答案 6 :(得分:3)

我尝试Janos'回答,但它对我不起作用。

我对我的index.html文件稍作修改(无关紧要)并再次推送到gh-pages分支。我尝试在不同的浏览器中打开页面,它工作正常。我的原始浏览器也更新了页面,虽然我认为这不是浏览器缓存问题。

我在本地用gh-pages重新掌握了主人并推动了这一点,不确定这是否有所不同。

答案 7 :(得分:1)

尝试像这样推送空提交

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

每一次对我来说都是一种魅力。

答案 8 :(得分:1)

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

我的问题似乎只在Chrome上,而这正是我开发该网站的地方。为了进行全面披露,以前的更改在React中进行,并托管在Netlify中。我试图推送和显示的新更改是托管在github页面中的静态文件。

FIX(在Chrome中): devtools>应用程序>清除站点数据(按钮)。

答案 9 :(得分:1)

我是新手,请允许我含泪回答。请转到存储库中的设置,向下滚动到enter image description here,以检查当前网页是否存在问题如果有问题,您的网站将不会更新。我认为这是一种保护机制。

今天早上,我删除并移动了存储库中的某些文件,我进行了很多次更新,即使在检查index.html确实已更新的情况下,它仍然保留在以前的版本中。后来我关闭了整个存储库,并开始了新的存储库,一个接一个地插入项目,但仍然遇到了问题。我尝试了像gh-pages这样的新分支,我认为对于像我这样的初学者来说,不必要。后来我检查了设置并找到了通知,我删除了有问题的文件,它立即起作用。如果我知道这个问题,我永远不会愚蠢到永远关闭它。我想念我的旧git记录。猜猜每堂课都要付出代价,Github也不例外。

答案 10 :(得分:1)

我有同样的问题,我的存储库中的所有内容都是最新的,但它仍然没有加载到我的github页面,所以不做任何进一步的更改,我试图添加,提交和拉。

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

答案 11 :(得分:1)

解决此问题

  1. 将您当前的Github Pages分支切换到其他分支并单击 在Save
  2. 切换回您理想的Github Pages分支,然后点击Save
  3. 这将迫使Github更新您的更改。

答案 12 :(得分:0)

在脚本中进行更改后,转到“提交更改”部分。在那里您将找到一个输入框和一个文本区域。众所周知,填写这些框不是强制性的,但是它们存在是有原因的。因此,下次在单击“提交更改”按钮之前,请尝试>>确保您在第一个输入框中写了一些内容(可以将文本区域留空),并且所写内容与所写内容有所不同。您对同一文件的最后一次提交。这样,github将能够区分当前脚本和更新后的脚本,并且更改应几乎立即反映出来。

希望有帮助。

答案 13 :(得分:0)

最简单的方法:

  

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

Take mine as example

答案 14 :(得分:0)

这对我有用:

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

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 

答案 15 :(得分:0)

万一这对别人有帮助...

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

我正在将Angular CLI与angular-cli-ghpages一起使用。将配置设置为生产后,将在构建中的每个文件之后附加哈希,迫使浏览器检索新内容。

示例部署脚本:

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

如果您不希望进行生产构建,也可以在angular.json的其他构建配置中指定输出哈希值

答案 16 :(得分:0)

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

答案 17 :(得分:0)

解决方案:问题在于浏览器缓存页面。在隐身模式下打开git链接(https://username.github.io/folderName/folder/file.ext)。

答案 18 :(得分:0)

我认为首先,请在“隐身模式”下检查您的网站。对我来说很好。

答案 19 :(得分:0)

的问题是由于浏览器缓存页引起的。 禁用浏览器缓存与元HTML标签。添加以下在_layouts/default.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或文件的

答案 20 :(得分:0)

此答案适用于使用 create-react-app 创建应用的用户。

我花了几天时间终于找到了 react-gh-pages 没有更新的答案。我希望以下答案对我有帮助。这是我研究过的多个答案的组合:

主要和最常见的原因是您的浏览器缓存功能。为了在每次渲染 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-pages)。
  2. 现在您的主分支已更新。
  3. 现在运行:git push origin :gh-pages。这将删除 gh-pages 分支。
  4. 运行:npm run deploy。这将构建您的应用程序并重新创建 gh-pages 分支 更新内容。
  5. 现在转到应用存储库页面右上角的设置部分。向下滚动到底部。在 Github Pages 部分下,在 source 下,有分支部分。将其更改为您的主分支或主分支。保持根文件夹不变。
  6. 转到您的站点,您将看到一个自述文件。这可能需要一些时间。大约一分钟后,将分支更改回 gh-pages。一分钟后访问您的网站,现在应该已经更新了。

我希望这会有所帮助!在评论部分告诉我它是否对你也有效,干杯!

答案 21 :(得分:-1)

就我而言,它有助于运行:

npm运行部署

我将master分支推送到GitHub之后做到了。我需要稍等片刻,直到页面上的更改可见。但它确实可以工作,而无需更改任何设置。

答案 22 :(得分:-1)

那么你所要做的就是运行以下命令:

<块引用>

npm run deploy

它会自动更新 gh-pages

答案 23 :(得分:-3)

只需清除浏览器的缓存。 ctrl + shift + r(例如Chrome)