我在Netlify主持的这个github repo的blogdown网站上运行https://timmastny.rbind.io/
在website2 / content / blog /我有两个帖子
2018-01-16-git-blogdown-project-workflow.Rmd
和 2018-01-13-bayesian-meta-analysis-powerlifting.Rmd
你可以看到,在这两篇文章的YAML中,我有draft: true
,而在第二篇文章中,我甚至有publishdate: '2018-01-20'
,这篇文章将在此后发布。
然而,随着这些更改推送到github和Netlify部署了一个干净的缓存,在我的实际网站上我仍然看到帖子: https://timmastny.rbind.io/
我对draft: true
缺少什么?
我已经阅读了第2.3.1和D.3节的书,但我不确定。我还将Hugo更新为0.32.4,并且是最新版本的blogdown。
修改:我删除了public
文件夹,并将public
添加到gitignore。 Netlify有16分钟的版本发布。但在实际网站上,我收到了 Page Not Found 错误。
以下是日志:https://app.netlify.com/sites/timmastny/deploys/5a60c299df99532a0147c3d7
这是我在Netlify上的部署设置。它们应该与博客书中的3.1中的建议相符:
部署设置
存储库:https://github.com/tmastny/website2
构建命令:hugo
发布目录:public
生产部门:主人
分支部署:仅部署生产分支及其部署预览
公共部署日志:日志是公共的
构建环境变量: HUGO_VERSION 0.32.4
答案 0 :(得分:2)
我将假设您使用public
作为Netlify的部署文件夹。
您的公用文件夹位于您的存储库中,因此会将其签出到Netlify网站,当您运行构建时,您的帖子已经存在于该文件夹中,因此它们将始终部署。
从项目中删除公用文件夹,并为公用文件夹添加.gitignore
。
部署应该在每次部署时构建新的公用文件夹,因此它可以将CDN与您的构建进行比较,并仅复制正确的文件。
Hugo主题在theme = "hugo-xmin"
中设为config.toml
。从GitHub签出存储库时,此主题文件夹为空。它在Netlify上也是空的,因此构建变得无效。
更改为theme = "hugo-lithium-theme"
中的有效主题config.toml
,构建开始创建您的网站页面。
在draft: true
中更新.Rmd
时,不会忽略构建。
Hugo没有处理.Rmd
的内容,它正在使用您创建的已处理.html
个文件中的内容。因此,您需要确保在构建之前将其中包含draft: true
的文件的内容提交到您的存储库。