实现Obsidian PC端和手机端(安卓)同步

步骤 1:在PC端设置Obsidian

  1. 安装Obsidian和Git :确保你的PC上已经安装了Obsidian和Git。你可以从Obsidian官网Git官网下载并安装。

  2. 克隆GitHub代码库:在PC上打开命令行(例如Windows的命令提示符或Mac/Linux的终端),然后运行以下命令将GitHub仓库克隆到本地:

    git clone https://github.com/your-username/your-repository.git
    

    替换your-usernameyour-repository为你的GitHub用户名和仓库名。

  3. 在Obsidian中打开本地库:在Obsidian中选择"Open folder as vault"选项,然后选择你刚刚克隆的代码库所在的文件夹。

  4. 设置自动同步(可选):可以使用第三方同步工具(例如Git插件)来实现自动同步你的本地库与GitHub仓库。

步骤 2:在手机端设置Obsidian

方法1:使用Obsidian Git插件
  1. 安装Termux

    • 在你的Android手机上,打开Google Play Store,搜索并安装Termux

    • 打开Termux,输入以下命令以安装Git:

    pkg update
    pkg install git

2.克隆GitHub仓库

1)打开刚刚安装的Termux,输入下面的命令请求获取存储访问权限,此时弹窗一个请求访问存储权限的弹窗,找到Termux 应用,打开访问权限

termux-setup-storage

2)进入手机内部的存储目录,比如

cd /sdcard/Documents

或者自己新建一个Obsidian目录,再执行 cd /sdcard/Documents

  1. 最后再克隆PC端在使用的同一个github代码库

    git clone https://github.com/your-username/your-repository.git

注意:这里使用https的方式将代码库克隆到本地。因为笔者起初使用的是ssh 方式克隆到的本地,结果发现配置好obsidian git插件,自动推送和拉取代码后,报错UnknowTransportError: uses an unrecognized transport protocol: ssh。查了半天,发现目前手机端obsidian git插件对于不支持ssh

来源:https://github.com/Vinzent03/obsidian-git#restrictions-of-the-mobile-version

在使用https拉取代码的时候会让输入用户名和密码,用户名是登录时的邮箱, 密码需要提前在github 主页的个人设置页面进行配置生成一个Personal Access Token,具体步骤如下:

  • 登录GitHub

    • 访问GitHub并登录你的账户。
  • 访问Token生成页面

    • 点击右上角的个人头像,选择Settings
    • 在左侧菜单中找到Developer settings,点击进入。
    • 选择Personal access tokens,然后点击Tokens (classic)
    • 点击Generate new token按钮,选择Generate new token (classic)
  • 配置Token权限

    • Note:为你的Token添加一个描述性名称(例如:"Termux GitHub Access")。
    • Expiration:选择Token的过期时间(可以选择不设置过期时间,但建议定期更新)。
    • Scopes :选择合适的权限,例如:
      • repo:访问和管理你的公共和私人仓库。
      • workflow:访问和管理GitHub Actions工作流。
      • admin:repo_hook:管理仓库的webhook和服务。
      • gist:访问和管理Gist。
  • 生成Token

    • 点击Generate token
    • 保存你的Token:一旦生成,请立即将Token复制并妥善保存(例如保存在一个密码管理器中)。注意:这是你唯一一次可以查看完整的Token,页面刷新后将无法再次查看。

为了避免每次操作时重复输入用户名和Token,可以配置Git记住你的凭据。

使用Git Credential Helper

Git提供了凭据助手(Credential Helper),用于保存和缓存GitHub的凭据。

在Termux中执行以下命令:

git config --global credential.helper store

或者使用缓存助手(会在特定时间内缓存凭据):

git config --global credential.helper cache

设置完成后,首次使用时会要求输入凭据,并自动保存到本地。下次操作时无需再次输入。

安全存储Token(推荐)

你可以选择将Token安全存储在密码管理器或加密的凭据文件中,具体方法如下:

git config --global credential.helper 'cache --timeout=3600'
  • 上述命令配置了Git在1小时(3600秒)内缓存凭据。

如果希望更改存储的凭据,可以手动编辑Git凭据文件:

nano ~/.git-credentials
复制代码
在文件中输入以下格式的信息:
https://your-username:your-personal-access-token@github.com

例如:

https://john_doe:ghp_abcdef1234567890abcdef1234567890abcdef12@github.com
配置Git默认用户名和邮箱

确保Git正确设置了你的全局用户名和邮箱,以便正确地标识提交者身份:

git config --global user.name "Your Name"
git config --global user.email "your-email@example.com"

完整过程示例:

# 打开Termux
termux-setup-storage

# 更新包管理器
pkg update && pkg upgrade

# 安装Git
pkg install git

# 生成Personal Access Token并保存到密码管理器中

# 克隆GitHub仓库
git clone https://github.com/john_doe/my-repo.git

# 进入仓库目录
cd my-repo

# 配置Git用户名和邮箱
git config --global user.name "John Doe"
git config --global user.email "john.doe@example.com"

# 创建一个新的文件
echo "Hello, GitHub!" > newfile.md

# 添加文件到暂存区
git add newfile.md

# 提交更改
git commit -m "Add newfile.md"

# 推送到远程仓库
git push origin main

# 输入GitHub用户名和Personal Access Token进行身份验证
# 可以配置Git保存凭据以避免每次都输入

最后面的git add 、git commit 、git push可以不用,我们使用obsidian中的git插件实现自动推送

3.手机端在Obsidian中打开仓库

  • 打开Obsidian,选择Open folder as vault
  • 导航到/sdcard/Documents/your-repository文件夹。

4.手机端配置自动推送修改到远程

1)安装obsidian-git插件,配置方式和PC端基本一致,需要注意的是

Obsidian Git插件最后面的 Authentication/Commit Author也得需要配置

Personal access token填写上以后是不会显示的。

配置完以后就和PC端一样可以通过obsdian控制github仓库了

相关推荐
lu_rong_qq9 天前
Obsidian 学习笔记 - 可插入模块
笔记·学习·markdown·obsidian
tortorish6 个月前
obsidian常用插件,实现高效知识管理,打造最强第二大脑(更新中)
markdown·知识管理·obsidian
超级强大的大阳7 个月前
Mac环境Obsidian的ExcaliDraw添加中文字体
macos·obsidian·excalidraw
知数SEO9 个月前
Mac安装Typora实现markdown自由
typora·markdown·obsidian