IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    新台机被折腾了一下就燃起不折腾不铁血的心:笔记软件又转 Obsidian

    zwwooooo发表于 2024-11-27 06:17:58
    love 0

    前段时间把 OneNote 的笔记迁移到 Joplin,其实感觉良好,只是对于自己不能拿捏的数据保存方式还是感觉不爽,毕竟以前的笔记本软件用的都是有“自家数据保存方式”的,而且折腾过几次“导出导入”后就感觉它们都不是很靠谱,或多或少都会丢失些或者破坏些文本数据,所以还是想用 Obsidian 的存储方式,毕竟就是 md 格式的文件,于是有了这篇折腾记录文章。

    Win11:Obsidian + Git 同步(Mac类似)

    前提:

    • 平常就有用 Git,不一定要熟练

    准备:

    1. 创建 git 托管平台账号(例如 Github),并创建好私人仓库,例如命名为 myNote,复制好 ssh 地址
    2. 配置好本地 Git 环境,还有 Github 的授权密匙之类配置,这个会点 Git 就能折腾,具体我这里就不做教程,反正现在搜索、AI 很方便
    3. 安装好 PC 版的 Obsidian 并建立一个库,假定也是 myNote(为了方便说明,假定 Obsidian 的库目录为 D:\Obsidian-Vaults,那么这个新建的 myNote 路径为 D:\Obsidian-Vaults\myNote

    操作:

    • 把【准备】第1步里面的仓库拉取到本地,例如在 D 盘执行下面的 git 命令,那么拉取到的仓库就在 D:\myNote
      git clone [ssh 地址]
    • 然后进入 D:\myNote 把目录里面的所有文件(注意包括隐藏文件和文件夹如 .ssh 等)都移到 D:\Obsidian-Vaults\myNote,然后删除 D:\myNote
    • 在 Obsidian 安装 Git 插件,安装好后侧边栏图标多了一个“Open Git source control”,然后笔记右边多了一栏 Git 操作界面

      从左到右分别是:提交和推送、提交、存储当前变更、取消存储当前、推送、拉取、改变排布方式、刷新当前文件变更情况。
      一般平时用 2 个按钮就行了:修改、增加了笔记就点“提交和推送”,如果其他端更新了笔记就“拉取”
    • 自动同步:Obsidian 设置 》Git,在 Automatic 的 Auto Commit-and-sync interval (minutes) 填入分钟值(如 10),然后勾选 Auto commit-and-sync after stopping file edits(大体意思就是停止编辑 10 分钟后自动提交和推送);下面有个 Auto pull interval (minutes),只要填入大于 0 的分钟数就会“每多少分钟拉取一次”;下面 Pull 栏下面,口蹄疫勾选 Pull on startup(顾名思义了)

    参考资料:

    • https://utgd.net/article/9642

    iOS 手机:Obsidian + iSH Shell 手动 Git 同步(也适用于 iPad)

    如果不差钱或者说舍得,还是用 Working Copy 这个有界面 Git 软件吧,比较简单快捷,而且使用起来比较方便,特别是跟快捷指令结合起来,具体方法自行搜索,多的很。

    前提:

    • PC 端已经搞好 Obsidian 和 Git 同步
    • 很少在手机端编辑笔记

    准备:

    • PC 端搞好的 Github 的 myNote 的仓库、ssh 地址
    • iOS 手机安装好 Obsidian、iSH Shell
    • 打开 Obsidian 创建仓库,假定命名还是 myNote,不要选 iCloud 同步

    打开 iSH Shell 操作:懒得一步一步贴了,直接 code,前面有 # 的是说明

    #先更新
    apk update
    
    #然后安装 git、openssh
    apk add git
    apk add openssh
    
    #生成公钥
    ssh-keygen -t ed25519 -C "<你的邮箱>"
    #查看公匙
    cat ~/.ssh/id_ed25519.pub
    #把公匙复制,然后去 Github 托管平台配置 SSH and GPG keys 里面的 SSH Keys,具体操作自己搜或问 AI
    
    #设置好托管平台一直的用户名、邮箱
    git config --global user.name "GitHub账号名"
    git config --global user.email "GitHub账号用的邮箱"
    
    #添加安全目录,否则 Git 可能出错
    git config --global --add safe.directory /root/obsidian/myNote
    
    #创建一个 obsidian 目录
    cd ~ & mkdir obsidian
    
    #挂载 obsidian app 的文件存储目录到刚才创建的 obsidian 目录
    mount -t ios . obsidian
    #iSH 会弹出一个窗口,在里边选择 Obsidian 文件夹即可,不需要选择 myNote 仓库,这样就可以访问多个仓库。
    
    #为克隆仓库准备
    #进入挂接好的 obsidian vault 目录
    cd ~/obsidian/myNote
    #删除 Obsidian 默认建立的配置目录 .obsidian 和里面的文件
    rm -rf .obsidian
    #返回 ~/obsidian/
    cd ..
    
    #克隆仓库
    git clone 你的仓库ssh地址 myNote
    #耐心等待克隆完成(失败了就重试)

    打开 Obsidian App,就可以看到笔记同步过来了

    iSH 常用操作:所以说这方法不适合懒党,我因为很少在手机端修改笔记,所以还好

    #操作前进入 myNote 目录
    cd ~/obsidian/myNote
    
    #同步仓库
    git pull origin main
    
    #如果偶尔手机上修改/添加了笔记,需要提交并推送到 Git 仓库
    #先添加修改/新文件
    git add .
    #然后提交
    git commit -m '描述'
    #最后推送
    git push origin main

    参考资料:

    • https://forum-zh.obsidian.md/t/topic/10083
    • https://hankmo.com/posts/artifact/ios-sync-obsidian/

    折腾后话

    这几天使用过程中,感觉 PC 和移动端都同步 .obsidian 目录的话,很容易造成配置冲突,所以我个人的处理是只保留 PC 的 .obsidian 配置,因为一般移动端不太去折腾 Obsidian 的插件配置等,毕竟一般都是查看为主。所以在 .gitignore 添加 /.obsidian 排除,但为了 PC 端的配置能提交到 Git,我用 Windows 的 mklink 把 .obsidian 链接到 .obsidian-pc,这样虽然移动端同步到 .obsidian-pc 也不会影响移动端的 .obsidian 配置

    ----

    怎么样?是不是有点折腾,对于我来说还好,勉强接受,因为不花钱。

    》打赏 | Donation

    转载请注明转自: 《新台机被折腾了一下就燃起不折腾不铁血的心:笔记软件又转 Obsidian》



沪ICP备19023445号-2号
友情链接