Pelican 和 GitHub Pages 工作流程

使用 Pelican 和 GitHub Pages 撰写博客文章的简单工作流程。

来源:Another Datum

本博客由 Pelican 提供支持,并通过 GitHub 使用 GitHub Pages 托管。在这篇文章中,我将描述部署新帖子时使用的工作流程。

Pelican GitHub Pages

对于不熟悉这些技术的人来说,Pelican 是一个静态站点生成器 - 这意味着您可以以 Markdown 等格式编写内容,Pelican 会自动为您生成 HTML 文件;GitHub Pages 是 GitHub 提供的一项服务,用于在 .github.io URL 下托管网站。

Markdown

使用 Pelican 和 GitHub Pages 非常简单。不过有一件烦人的小事……GitHub Pages 假定主分支包含要提供给世界的根文件夹。如果您使用 Pelican 的默认设置,则输出文件夹就是您要提供的文件夹。 output 包含生成的网站文件。如何组织存储库内的文件的自然选择是将 pelican 的根文件夹(output 的父文件夹)定义为存储库的根。但 GitHub Pages 需要 output 作为根。真扫兴……

master output output output output

output

有些人使用两个单独的存储库来解决这个问题:一个用于网站“源”文件,一个用于将使用 GitHub Pages 提供的输出。

那些

我个人不喜欢将我的博客分成两个存储库。我想把所有东西都放在一个地方,所以我选择使用分支和 git hooks 来解决问题。

    第一步是创建两个分支:
  • source 将包含博客的“源”文件,即 - 所有文件,例如包含实际帖子的内容文件夹和 pelicanconf.py 文件。master 将仅包含输出的内容。
  • source 将包含博客的“源”文件,即 - 所有文件,例如包含实际帖子的内容文件夹和 pelicanconf.py 文件。 source content
  • pelicanconf.py
  • master 将仅包含输出的内容。 master 输出 https://github.com/yoel-zeldes/yoel-zeldes.github.io master 输出 yoel-zeldes.github.io master 输出 #!/bin/sh执行