重新明确笔记软件和博客的边界
我禁用了曾经觉得好用的 obsidian + github actions,重新明确笔记软件和博客的边界。
我常用的笔记软件是 obsidian,会通过官方同步服务同步到多台设备上,不过也会搭配 git + github actions + md 的 meta 属性把 obsidian 仓库部分内容筛选同步到另外一个 git 仓库中,从而触发 cloudflare 构建部署我的个人博客。
这是之前分享的内容
一些预处理的逻辑:
更具体的脚本: 使用github action定时同步obsidian内容到astro博客仓库
但时间久了发现了一些问题:
- 要对外展示的内容和 obsidian 的内容不是完全一致,虽然我也实现了复制没有上传到图床的文件到博客仓库的 public 文件夹中,保证图片始终能显示,但其实速度不及图床,并且有的上传了图床有的没有,以及编辑起来也不是很舒服。以及在 obsidian 中双链引用的一些内部内容,如果没有发布到博客其实也无法查看,虽然可以通过继续完善 action 的脚本清洗内容,实现大部分的需求,但是自己写内容的时候有些束手束脚。
- 由于使用了同步服务 + git 共同管理,经常需要处理的 git merge conflicts ,浪费时间。只有处理以后才能发布博客。为什么不直接更新博客的仓库内容?因为自己做的 action 实现了一些别的处理,一旦重新 push obsidian 所属的完整仓库,自己在博客仓库的内容就会被清理后内容重新覆盖掉。
- 博客打算从 md 向 mdx 迁移,实现更多自定义的 md 渲染。
为了解决第一个问题,我开始是副本的概念,当一篇要对外展示的内容要发布的时候,我会去复制一份原有的,然后在原来的基础之上修改。这就导致其实 obsidian 中存在很多重复的内容。看着越来越混乱的 obsidian,有些产生抵触心理了,我决定还是重新好好整理一下现有内容。
有的时候总想着方便 all in one 一条龙,但这次的工作流确实让自己更受限制了。当记录的形式限制了记录本身,或许应该适当改变一下工作流了。
于是我决定还是拆掉 obsidian 通过 actions 同步内容的逻辑。直接手动上传对外的版本到博客的仓库,一下子感觉负担少了很多。