基于 Git 的 Obsidian 笔记同步

Obsidian 笔记同步:Git 插件 + Android Mgit

一、总体同步逻辑

  • PC 端:通过 Obsidian Git 插件,实现自动拉取与推送,完成与远程仓库(Gitee/GitHub)的同步。
  • Android 端:使用 Mgit 客户端手动拉取与推送,满足临时阅览需求。
  • 远程仓库:统一使用 Git 托管平台(推荐 Gitee 国内访问快,或 GitHub)。

注:本文作者的手机以临时阅览 为主,不用于生产编辑

APK安装包分享: https://pan.baidu.com/s/13q7qFQkhdOVtnDus0N3ppg?from=init\&pwd=w8by


二、PC 端:Obsidian Git 插件配置

该插件需要在本地已安装 Git 环境。

1. 创建远程仓库

  • 使用 Gitee(国内推荐)或 GitHub 新建一个仓库。
  • 获取仓库的 SSH 地址(推荐)或 HTTPS 地址。

2. 初始化本地仓库并关联远程

  • 在 PC 上打开你的 Obsidian 笔记主目录。

  • 使用命令行或 Git 客户端:

    bash 复制代码
    git init
    git remote add origin 你的远程仓库SSH地址
    git add .
    git commit -m "初始化笔记库"
    git push -u origin main

3. 安装 Obsidian Git 插件

  • 在 Obsidian 中,进入 设置 → 第三方插件 → 社区插件,搜索 Obsidian Git 并安装启用。

4. 配置自动同步(关键)

在插件设置中,建议配置以下选项:

设置项 推荐值 说明
Auto pull interval 5 分钟 自动拉取远程变更
Auto push interval 5 或 10 分钟 自动推送本地提交
Pull on startup 开启 启动 Obsidian 时自动拉取
Commit message 按需自定义 推荐包含时间戳
Vault directory 你的笔记根目录 默认正确即可

✅ 多个平台(多台电脑)同样安装插件并配置相同间隔,即可实现多端自动同步


三、Android 端:使用 Mgit 实现手动同步(阅览辅助)

原文参考:https://forum-zh.obsidian.md/t/topic/7152

适用场景:手机端仅阅览,不主动编辑。

前提准备

  • 安装两个 App:
    • Mgit(Git 客户端)
    • Obsidian(Android 版)

1. 修改 Mgit 仓库存储路径(重要)

Mgit 默认仓库路径位于应用私有目录,不方便 Obsidian 直接读取。需要改为公共目录。

  • 打开 Mgit → 右上角三个点 → 设置通用Repos 的根存储位置
  • 修改为:/storage/emulated/0/Documents

参考 Issue:无法添加新仓库等问题

⚠️ 若仓库已存在于默认位置,需手动移动。

2. 配置 SSH 密钥(私有仓库同步需配置)

注意:如果仓库是私有仓库,需要配置SSH公钥

  • Mgit → 设置安全SSH Keys → 右上角 +
    • 文件名:任意,如 obsidian_android
    • 类型:4096 RSA
    • 生成密钥
  • 复制生成的公钥内容
  • 登录 Gitee → 设置 → 安全设置 → SSH 公钥 → 粘贴 → 确定
    访问 https://gitee.com/profile/sshkeys 即可进入下图界面

3. Clone 远程仓库到手机

  • 在 Gitee 仓库页面 → 黄色按钮 克隆/下载SSH → 复制地址
  • Mgit 主界面 → 右上角 +克隆远程仓库 → 粘贴地址 → 克隆

4. 用 Obsidian 打开该仓库

  • 打开 Obsidian → 打开文件夹作为仓库
  • 定位到:/storage/emulated/0/Documents/你的仓库名
  • 确认使用该文件夹

5. 日常编辑与同步

操作 方法
拉取 打开 Mgit → 对应仓库 → 右上角菜单 → 拉取
推送 (如需编辑)编辑完成后,在 Mgit 中 commit 并 push
阅览 直接打开 Obsidian 查看最新内容(需先拉取)

💡 如果手机仅阅览,可以只拉取,不推送。


四、PC 端:如果不想用 Obsidian Git 插件,可以参考下面的方法

1.基本配置

下载仓库:https://gitee.com/on88888/sync_demo

git-auto-push.exe 放到项目根目录下,配置 .env 文件,双击测试同步效果

复制 .env.example 为 .env 并填写真实信息:

sh 复制代码
# Gitee 用户名(必填)
GITEE_USER=your_username
# 仓库名称(必填)
REPO_NAME=your_repo_name
# Gitee 访问令牌(必填)
# 在 https://gitee.com/profile/personal_access_tokens 生成
# 需要勾选 projects 权限
ACCESS_TOKEN=your_access_token_here

比如当前我的项目是 sync_demo,则 git-auto-push.exe 放到 sync_demo 目录下

2.添加任务计划

通过Windows自带的任务计划程序设置定时执行程序

Win + R,输入以下命令:

bash 复制代码
taskschd.msc
# 进入任务计划程序 -> 添加操作 -> 设置触发器 -> 设置计划名称 -> 点击确定
# 设置完,可以右键选择计划点击启动,测试一下有没有日志输出(程序所在目录)
相关推荐
大明者省6 小时前
网页开发标准与课程管理网站搭建
笔记
中屹指纹浏览器7 小时前
浏览器指纹与代理IP协同防护:原理、配置与企业级安全架构
经验分享·笔记
淳杰7 小时前
学习笔记 | playwright用法
笔记·学习
三品吉他手会点灯7 小时前
STM32F103 学习笔记-21-串口通信(第6节)-串口发送命令控制RGB灯
笔记·stm32·单片机·嵌入式硬件·学习
玄米乌龙茶1238 小时前
LLM成长笔记(十二):质量评估与可观测性
大数据·人工智能·笔记
快乐得小萝卜8 小时前
笔记:理解 KL 散度与 INT8 量化校准
笔记
hnult8 小时前
考试云:九重防作弊体系与六大AI能力,打造安全智能在线笔试系统云平台
人工智能·笔记·安全
handler019 小时前
【MySQL】教你库与表的增删查改操作(基础)
运维·数据库·笔记·sql·mysql·数据·分析
Qres8219 小时前
Git基础命令学习笔记
笔记·git·学习