本仓库把维护/批处理相关脚本统一放在 tools/ 目录下,目标是:可复用、可追溯、可一键运行

如果你是第一次看这些工具,建议先从本篇总览建立全局认知,然后按需打开对应的专项文章。

目录结构

目前 tools/ 下包含:

  • tools/md2Hexo.py:批量为 Markdown 补齐 Hexo front matter(支持 dry-run、exclude、递归目录、配置文件等)
  • tools/update.sh:服务器侧"同步 gh-pages 内容"的脚本(把工作区更新到 origin/gh-pages
  • tools/upgrade.sh:本地侧"升级依赖 + 拉取最新 Butterfly + 重新生成"的脚本
  • tools/configs/md2Hexo.py 的配置文件目录(每个内容集合一个 JSON 配置)

工具一览与使用建议

1) md2Hexo:批量补齐 front matter

定位:你从外部搬运/整理了大量 Markdown(没有 Hexo 头信息),希望统一补齐 title/date/tags/categories

  • 交互式:python3 tools/md2Hexo.py
  • 预览(不写入):python3 tools/md2Hexo.py --dry-run -d source/_posts
  • 配置文件批处理:
    • python3 tools/md2Hexo.py --config tools/configs/awesome-cheatsheets.json -d source/_posts/awesome-cheatsheets

完整代码与逐段解析见:

2) update.sh:服务器同步 gh-pages

定位:服务器上有一份仓库工作区(通常用于 Nginx/宝塔直接指向目录),需要"拉取并强制对齐 gh-pages 分支"。

  • 运行:bash tools/update.sh
  • 做的事情(高层):
    • git fetch origin gh-pages
    • git checkout gh-pages(必要时创建本地分支)
    • git reset --hard origin/gh-pages

专项说明见:

3) upgrade.sh:本地升级与重新生成

定位:你想在本地对依赖/主题做一次"升级刷新",然后重新生成站点静态文件。

  • 运行:bash tools/upgrade.sh
  • 做的事情(高层):
    • 更新所有 npm 依赖到最新版本(npm update
    • 拉取 Butterfly 最新主题到 themes/butterfly
    • hexo clean && hexo generate

专项说明见:

常见问题

  • 我在哪里能看到 GitHub 主页入口?
    • 本站主题配置已启用 GitHub 社交图标与侧边栏 Follow 按钮(指向 https://github.com/yuanweize)。
  • 这些脚本会不会互相重复?
    • 目前 tools/ 里三个脚本功能边界清晰:一个 Python 批处理、一个服务器同步、一个本地升级构建;没有重复脚本。