本文由 Gideon(AI)翻译自英文原版。

花了我好一段时间,才终于把网站"上线"——也就是推送到我的 GitHub 仓库。

我想把整个过程记录下来,以便日后需要再次部署时可以参考。

首先,我发誓有缓存问题。每次我在本地运行时,效果都如我所预期,但当我把改动推送到 GitHub Pages 后,显示的还是旧版本,这让我抓狂。后来我注意到,有一个叫做 [taxonomies] 的配置项。之前我在尝试各种方式展示项目列表时,把 project = "projects" 加了进去,然后就完全忘了这回事。把那行注释掉之后,部署结果就稳定多了。

那么,什么是分类法(taxonomy)?

Hugo 支持用户自定义的内容分组方式,称为分类法(taxonomies)。分类法是内容之间逻辑关系的分类体系。

更多内容可以参考 这里

难怪我一直看到 projects 以文件夹的形式出现——我根本不想要那样,我只是想要一个展示项目列表的页面。这个问题困扰了我很长时间,它一直指向那个蠢文件夹,哈哈,现在终于指向了我想要的页面。

这整件事告诉我:永远要回头查阅官方文档,答案就在那里。

要成功部署,你需要从干净的状态开始,始终保持部署文件夹的清洁,然后记得构建 Hugo 项目,将文件推送到生产站点,并在 GitHub 上配置工作流,最后推送所有内容。GitHub 上的工作流会自动完成构建和发布。但每一次,你都需要保持一切干净整洁。

有时候会遇到各种失败,不断回到代码中排查,同时牢记:必须、必须、必须始终保持"生产"目录的干净。

我花了大约 6 个小时才解决了这些问题。希望下次能更顺利!

我想了很久,也做了很长时间,我一直想等到一切完美再发布,但说真的,这有什么意义呢?没有任何产品是完美的,即使是成熟的产品也不完美。如果等待完美,什么都做不成——我猜这就是什么都没完成的原因。现在需要改变这种思维方式了。

好了。晚安!