在 GitHub 中管理 hugo 项目的正确方法是什么?

What is the right way to manage the hugo project in GitHub?

我目前有 [username]/github.io 个使用简单 HTML/CSS 制作的页面。

现在我正在尝试切换到 Hugo 以更有效地管理网站。 我知道 Hugo(静态站点生成器)生成 public 目录,我可以将其内容复制到 [username]/github.io 存储库。

但是,这样一来,我必须有两个不同的存储库来保存 Hugo 项目本身和生成的网站。

保留 Hugo 存储库的正确方法是什么?

我相信Jekyll,推送的项目会在GitHub的服务器端生成github.io个页面。

对于 Hugo 项目,我是否必须有两个不同的存储库,一个用于 Hugo,另一个用于生成的站点?

您可能需要两个存储库,一个用于 Hugo 的内容,另一个将是一个 git 子模块,其中包含 public 文件夹的内容。

查看 Hugo 文档 Host on Github Step-by-step Instructions:

  1. 在 GitHub 上创建 <YOUR-PROJECT>(例如博客)存储库。此存储库将包含 Hugo 的内容和其他源文件。

  2. 创建一个 <USERNAME>.github.io GitHub 存储库。这是将包含您的 Hugo 网站的完整呈现版本的存储库。

  3. git clone <YOUR-PROJECT-URL> && cd <YOUR-PROJECT>

  4. 使您的网站在本地运行(hugo server 或 hugo server -t )并打开浏览器 http://localhost:1313.

  5. 一旦您对结果感到满意:

    Press Ctrl+C to kill the server

    rm -rf public 完全删除 public 目录

  6. git submodule add -b master git@github.com:<username>/<username>.github.io.git public。这将创建一个 git 子模块。现在,当您 运行 将您的站点构建到 public 的 hugo 命令时,创建的 public 目录将具有不同的远程源(即托管 GitHub 存储库)。您可以使用以下脚本自动执行其中一些步骤。