quartz/content/10_Atlas/13_Methodology/Quartz + GitHub Actions 部署实战.md
2026-02-10 10:14:26 +00:00

2.6 KiB
Raw Blame History

type topic tags created updated version
evergreen 生产力工具
#quartz
#github-actions
#static-site
#automation
2026-02-10 15:37 2026-02-10 15:37 1.0

🌲 知识原子Quartz + GitHub Actions 部署实战

[!quote] 核心观点 Quartz + GitHub Actions 的组合是目前 Obsidian 用户实现“数字花园”公网发布的最优免费方案,它实现了“本地创作,全网同步”的无缝闭环。

🔍 详细定义

  • Quartz 4.0:一个基于 Node.js 的静态站点生成引擎,原生支持 Obsidian 的双向链接、正文预览和多种复杂语法。
  • GitHub Actions:自动化工作流工具,负责监听代码库变动,自动触发编译并将渲染后的 HTML 推送至 GitHub Pages 托管。

💡 深度见解Insight

  • 解耦优势:通过 GitHub Actions你可以将“源码库Private”与“发布库Public”分离。这既保护了你的隐私笔记不被泄露又享受了公网访问的便利。
  • 低成本运维:该方案完全基于 GitHub 基础设施,零服务器成本,且具备极高的抗并发能力和全球访问速度。

⚙️ 工程实践Step-by-Step

1. 环境初始化

  1. Fork Quartz 官方仓库
  2. 本地执行 npx quartz create,选择你的 Synapse-Vault 作为内容源。

2. 跨仓库自动化同步脚本Action YAML

在你的 Synapse-Vault 仓库中创建 .github/workflows/deploy.yml

name: Deploy to Quartz
on: 
	push: 
		branches: [ main ] 
jobs: 
	build: 
		runs-on: ubuntu-latest 
	steps: 
		- name: Checkout Vault 
		  uses: actions/checkout@v3 
		- name: Push to Quartz Content 
		  run: | 
		  # 此处编写逻辑:将本地内容拉取并覆盖到 Quartz 仓库的 content 目录 
		  # 建议使用 API 或专门的 Sync Action 触发

3. 私密性过滤Privacy Filter

在 Quartz 配置中排除 30_Daily 文件夹,仅开放 10_Atlas

  • 修改 quartz.config.ts 中的过滤逻辑。

  • 在笔记 YAML 区加入 publish: false 实现个体过滤。

⛓️ 知识网络 (Context)


#Knowledge #Structure #automation #quartz