基于 Git 和 Termux 实现 Obsidian 平板多端同步方案
前言
Obsidian 是一款免费且灵活的笔记软件,以 Markdown 形式撰写笔记,功能丰富且插件社区庞大。但官方多端同步服务不免费。本文介绍基于 Git 和 Termux 的免费多端同步方案,实现平板与电脑互通。
一、环境概述
- 设备:安卓平板(如华为鸿蒙系统)、个人电脑
- 必要工具:Termux、Git(Termux 内安装)、Obsidian、GitHub 账号
- 远程仓库:GitHub(HTTPS + Personal Access Token)
二、使用步骤
1. Termux 配置
Termux 是适用于 Android 的终端模拟器,提供类 Linux 环境,无需 Root 即可使用。
1. Termux 下载
安装完成后进入 Termux。

2. Termux 初始化
第一次进入 Termux 执行以下命令允许访问共享存储:
termux-setup-storage
查看 Termux 可访问的文件夹:
ls
输出包含 storage 文件夹,即移动端内部储存。进入该目录:
cd storage/
再次 ls 查看具体子文件夹(如 downloads)。后续建立 Obsidian 仓库时,需将仓库建立在 Termux 可访问的文件夹内。

3. Git 配置
安装 Git:
pkg update && pkg upgrade && pkg install git
设置 Git 用户信息(建议与 GitHub 一致):
git config --global user.name "yourname"
git config --global user.email [email protected]
2. Obsidian 配置
下载并安装适合设备的 Obsidian 版本(安卓端直接下载 APK)。
创建本地仓库:


选择 Termux 中已选定的文件夹路径:


新建一个文件夹存放仓库:


3. Obsidian 远程连接 GitHub
1. 本地仓库 Git 初始化
回到 Termux,进入创建的 Obsidian 文件夹:
cd /storage/downloads/obsidian/<your_repo_name>
进行 Git 初始化:
git init
git config --global --add safe.directory /storage/downloads/obsidian/<your_repo_name>
添加文件并提交:
git add .
git commit -m "first"
2. 配置 GitHub 认证(HTTPS + Token)
在 GitHub 上生成新的仓库。
生成个人访问令牌(PAT):
路径:GitHub → Settings → Developer Settings → Personal access tokens → Tokens (classic) → Generate new token (classic)。
输入令牌名,勾选有效期(如 No expiration)和权限(repo),点击生成。

复制生成的令牌并保存(仅显示一次)。

3. 配置远程仓库
在 Termux 中配置远程仓库:
git remote add origin https://github.com/<你的用户名>/<仓库名>.git
重命名分支并上传:
git branch -m main
git push -u origin main
Git 会提示输入用户名和密码,密码处输入刚才生成的 Token。
让 Git 记住 Token:
git config --global credential.helper store
4. 设置 .gitignore
忽略 Obsidian 的缓存和临时文件。在仓库根目录创建 .gitignore 文件:
nano .gitignore
写入以下内容:
# 忽略 Obsidian 布局文件
.obsidian/workspace
.obsidian/workspace.json
.obsidian/workspace-mobile.json
# 缓存文件
.obsidian/cache/
.obsidian/appearance.json
# 插件运行时数据
.obsidian/plugins/*/data.json
.obsidian/plugins/*/manifest.json
# 系统临时文件
.DS_Store
Thumbs.db
temp/
tmp/
保存退出后提交:
git add .gitignore
git commit -m "add gitignore"
git push
日常使用中,写笔记前拉取更新,写完笔记后提交推送:
git pull --rebase
git add -A
git commit -m "update notes"
git push
一键同步脚本
在 Termux 主目录创建脚本简化操作:
nano ~/sync_obsidian.sh
输入以下内容:
#!/data/data/com.termux/files/usr/bin/bash
set -e
cd /storage/downloads/obsidian/<your_repo_name> || { echo "❌ 无法进入仓库目录"; exit 1; }
echo "📌 添加所有修改..."
git add -A
if git diff --cached --quiet; then
echo "ℹ️ 无需提交"
else
if [ -n "$1" ]; then
msg="$1"
else
msg="sync from tablet on $(date '+%Y-%m-%d %H:%M:%S')"
fi
git commit -m "$msg"
fi
echo "📥 拉取远程更新 (rebase)..."
git pull --rebase
echo "🚀 推送到远程..."
git push
echo "✅ 同步完成"
赋予执行权限:
chmod +x ~/sync_obsidian.sh
设置快捷别名:
echo "alias sos='~/sync_obsidian.sh'" >> ~/.bashrc
source ~/.bashrc
此后在任何目录输入 sos 即可自动完成拉取、提交和推送。
总结
享受你的远程仓库吧!
最后可以配置电脑端的 Obsidian 远程仓库,原理完全一致,从而实现完整的多端互通。


