7

我正在使用 Github Pages 和 Hugo (proquestionasker.github.io) 创建一个网站。目前,当我在 RMarkdown 中创建项目文件或博客文章时,我必须将它们转换为 Markdown (.md) 文件,然后 Hugo/Github 才能读取它们。blogdown包似乎非常适合我的需求,但我无法让它工作

我已经下载了 Hugo 和 blogdown。我的步骤目前如下(在项目目录中作为我的工作目录工作):

(在 R 工作室)

    # Create new file in the "content/portfolio" folder
    blogdown::new_content("portfolio/new.Rmd", format = "yaml")

这会在我期望的文件夹中创建一个新的 .Rmd 文档。标题写道:

    ---
    date: 2016-12-15T16:02:46-08:00
    draft: true
    image: "img/portfolio/map.png"
    showonlyimage: false
    title: test
    ---

我继续将 R 内容添加到文件中,就像处理任何 R 文档一样。我保存文件。此时,我只是想在将更改推送到 Github 之前测试一下 Hugo 是否可以解释这个文件,所以在 R 中:

    # Build Site
    blogdown::build_site()

我收到了我期望从 Hugo 那里得到的正常的“网站建设”反馈。当我查看 public/portfolio 文件夹时,我看到一个“new.Rmd”。到目前为止,一切都很好。

实际查看该站点时会出现问题。我尝试以“正常”的 Hugo 方式预览该网站:

    # In terminal window
    hugo server

然后在我的浏览器窗口中启动http://localhost:1313/ 。我的作品集显示在主页上,所有.md格式的文件都显示了,但new.Rmd没有。

我认为这可能是一个问题,因为hugo server似乎仍在使用 hugo 构建站点,而不是 blogdown。所以我绕过了网站的预览,直接将更改提交到 GitHub。

我的站点设置方式是主分支(包含“公共”文件夹中的所有站点构建项目)作为“源”分支的子树。我按照正常的更新流程进行了更新(如下所示并受到这篇文章的启发),但我没有使用 hugo 构建站点,而是使用 blogdown 构建站点。过程如下:

    # In terminal window - Adding new documents
    git add -A
    git commit -am "Adding new blogdown documents"
    git push

    # Pulling down the master branch into 'public' to help avoid merge conflicts
    git subtree pull --prefix=public \
        git@github.com:ProQuestionAsker/ProQuestionAsker.github.io.git master -m "Merge origin master"

    # In RStudio - Build website using blogdown
    build_site()

    # In terminal window - Pushing the updated 'public' folder to the 'sources' branch
    git add public
    git commit -m "Pushing updated public folder to source branch"
    git push origin "sources"

    # Pushing the updated 'public' folder to the 'master' branch
    git subtree push --prefix public 
        git@github.com:ProQuestionAsker/ProQuestionAsker.github.io.git master

这些文件都出现在我的 GitHub 库中,正如我所期望的那样,但 Hugo 似乎没有呈现除 .md 文档之外的任何内容。这些都按预期显示在网站上。我不确定这是 Hugo 问题还是 Blogdown 问题,但我似乎无法让它工作。

任何帮助将非常感激!

4

1 回答 1

4

这个问题其实不是 blogdown 的问题,但是经过几个小时的搜索和摸索,我发现这似乎是我使用的主题的问题。按照上面列出的步骤,可以让 blogdown、hugo 和 github 页面很好地协同工作。

于 2016-12-16T04:57:12.503 回答