Obsidian电脑+手机端同步(github+MGit)

本文详细介绍了如何在华为HarmonyOS手机和Windows电脑之间使用Obsidian和Git进行版本控制和文件同步,包括安装MGit、设置SSH密钥、上传至GitHub及在手机端同步的操作步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系统和软件版本

名称版本
Obsidian1.5.3
华为HarmonyOS4.0.0
Git2.43.0-64-bit
MGit1.7.0(手机端)
F-Droidapk(手机端)

安装F-Droid是因为我的手机是HarmonyOS系统,没有谷歌框架,无法通过google play安装MGit,所以下载F-Droid来安装MGit. F-Droid换源链接:https://help.mirrors.cernet.edu.cn/fdroid/

软件安装包

obsidian下载链接:https://forum-zh.obsidian.md/
git下载链接:https://git-scm.com/downloads/win,或者联想应用商店(速度快)
F-Droid下载链接:https://mirrors.tuna.tsinghua.edu.cn/fdroid/archive/org.fdroid.fdroid_1019052.apk
F-Droid换源:https://mirrors.tuna.tsinghua.edu.cn/help/fdroid/(换源后下载MGit速度快)
MGit下载:从F-Droid里面搜索下载

电脑端准备和操作

下载安装Obsidian

到官网或者Obsidian的中文论坛下载安装包,安装完成在本地新建一个仓库,我这里的仓库名字是obsidian,后续以这个仓库为例进行说明。

image-20240107132812879

默认的插件市场是需要VPN的,如果有插件的需要可以用pkmer这个插件市场下载插件,这个不需要VPN

pkmer链接: PKMer

安装git

安装包可以去官网下载或者使用我上面给的链接

安装好后要找到这个应用,一会儿要用到

image-20240107135702275

使用github

首先要注册一个github账号,记住自己的用户名注册时使用的邮箱,这个注册的教程网上可以查阅,这里就不写了。

点击右上角的头像->再点击Settings,在这里可以看到和找到自己的用户名和邮箱。

image-20240107135026570

image-20240107135354241

使用git将本地仓库obsidian上传到github中

我这里只给出这个过程要用到的命令,如果需要了解git如何使用可以学习廖雪峰老师的教程

git教程(廖雪峰):Git教程 - 廖雪峰的官方网站 (liaoxuefeng.com)

✨开始之前:

将本地仓库上传到github中需要进行身份认证,过程如下:

  • 指定用户名和Email地址

  • 在本地用命令行生成一对密钥(包括公钥和私钥)

  • 将生成的公钥用记事本打开,复制后粘贴到github中存放公钥的地方

指定用户名和Email地址:

首先打开git bash, 然后进行命令行操作

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

生成一对密钥:

$ ssh-keygen -t rsa -C "youremail@example.com"

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

将公钥id_rsa.pub用记事本打开,复制后粘贴到github中存放公钥的地方:

image-20240107142251085

点击NEW SSH KEY进行粘贴

✨现在在github上创建一个仓库,用来存放我们要上传的文件:

点击右上角的+号->选择New repository

image-20240107143055196

我这里的仓库名字是obsidian和本地仓库名相同,属性选择私有,点击Create repository

注意:这里除了这两个地方需要改动,不要动其他的选项

image-20240107143404209

✨初始化本地仓库:

通过git init命令把这个目录变成Git可以管理的仓库

进入到刚刚创建的本地仓库obsidian

$ cd e:\obsidian

image-20240107143856096

一定要进入obsidian仓库里面,再执行初始化命令

初始化obsidian仓库

$ git init

通过git init命令把这个目录变成Git可以管理的仓库.

✨将本地的obsidian仓库与github上的obsidian仓库进行关联:

$ git remote add origin git@github.com:你的用户名/仓库名.git

你的用户名是自己的github用户名,仓库名是刚刚在github上创建的仓库名字。
例子:
在这里插入图片描述

git remote add origin git@github.com:OrangeSunrise/A_ObsidianJianhui.git

✨将本地仓库的内容推送到GitHub仓库

在推送之前,我们需要先做一个提交申请,这是由于git的工作机理要求。具体可以参看git教程。

这里先创建一个txt格式文件,用记事本创建,并写入内容Here are my obsidian notes.

保存为叫readmetxt的txt格式文件。

image-20240107145918185

添加文件到Git仓库,分两步:(这里要在obsidian本地仓库中进行)

第一步

$ git add readmetxt.txt

第二步

$ git commit -m "add files."

"add files."这个代表一个提交说明,可自定义,但要用引号。

image-20240107150445092

将本地仓库的内容推送到GitHub仓库:

$ git push -u origin main

由于远程库是空的,我们第一次推送main分支时,加上了-u参数,Git不但会把本地的main分支内容推送的远程新的main分支,还会把本地的main分支和远程的main分支关联起来,在以后的推送或者拉取时就可以简化命令。

image-20240107151006203

如果报错的信息如下:
在这里插入图片描述
这是由于将本地的obsidian仓库与github上的obsidian仓库进行关联这个步骤出现了问题,解决方法如下:

问题原因
你的 Git 远程仓库地址(Remote URL)配置错误,orangesunrise不是一个有效的主机名(如 GitHub 的正确主机名是 github.com)。需要将 URL 修正为 Git 服务商(如 GitHub、GitLab 等)提供的正确地址。

​解决方法
1. ​检查当前远程仓库地址
git remote -v
如果输出结果中的 URL 包含 orangesunrise(如 ssh://orangesunrise/... 或 git@orangesunrise:...),说明配置错误。
2. ​修改为正确的远程仓库地址
​如果是 GitHub,使用以下命令修正(替换 你的用户名 和 仓库名):
​SSH 协议​(需要配置 SSH 密钥):
git remote set-url origin git@github.com:你的用户名/仓库名.git
3. ​验证 SSH 连接(仅限 SSH 协议)​
如果使用 SSH 协议,需确保已配置密钥:
ssh -T git@github.com
若提示 You've successfully authenticated 表示连接成功。
若失败,需生成并添加 SSH 密钥。
4. ​重新推送代码
git push -u origin main

这里你可能会遇到下面说的问题:

image-20240107151151763

注意:Are you sure you want to continue connecting (yes/no)?这里一定要输入yes,不能直接回车,因为回车代表no

上面的过程可以看出,想使用git提交到远程仓库需要先添加后推送。

添加文件到Git仓库,分两步:

  1. 使用命令git add <file>,注意,可反复多次使用,添加多个文件;
  2. 使用命令git commit -m <message>,完成。

推送可以使用命令git push origin main一次性完成,但是添加文件如果很多则很繁琐,可以搭配git提交的图形化界面来便捷完成。

Sourcetree的使用

image-20240107151859745

下载安装后,打开Sourcetree.

第一次运行SourceTree时,SourceTree并不知道我们的Git库在哪。如果本地已经有了Git库,直接从资源管理器把文件夹拖拽到SourceTree上,或者选择打开文件夹,就添加了一个本地Git库:
在这里插入图片描述
在这里插入图片描述

我们双击obsidian这个本地库,SourceTree会打开另一个窗口,展示这个Git库的当前所有分支以及文件状态。选择左侧面板的“WORKSPACE”-“File status”,右侧会列出当前已修改的文件(Unstaged files):

image-20240107152137996

✨在使用之前首先要导入公钥,步骤如下

工具->选项

image-20240107152322103

image-20240107152555534

这里的id_rsa是公钥

✨使用sourcetree进行提交文件

点击文件状态->暂存所有

image-20240107152846511

在下面文本框输入提交说明,再点击提交

image-20240107153037865

提交成功后点击推送

image-20240107153158983

image-20240107153306705

下面显示的就是推送成功了

image-20240107153426058

手机端同步

所用软件

  • obsidian app
  • MGit

e69836f28bf1115e2a6d6a905d80212

MGit设置

MGit配置步骤:

  1. 在设置界面的「repos 的根存储位置」拟用于存放 Android 设备上 Obsidian 笔记的路径
  2. 在设置页面,点击「SSH Keys」>「+」,新建 SSH 密钥
  3. 自己用英文命名密钥的文件名(比如MGit)—>点击生成密钥—>将生成的密钥上传到github上面的SSH keys

image-20240205175349235

image-20240205175427936

3aad89a098dc4f7fac0a4a6077f9ae7

79fb895ce92e099407118d91f1e8f89
在这里插入图片描述
将手机上MGit的密码粘贴到giuhub上:
在这里插入图片描述
4. 从GitHub 复制 SSH Remote 地址(在仓库主页面点击「下载/克隆」(GitHub 点击「Code」)查看),填入远程地址,点击克隆。
在这里插入图片描述

在这里插入图片描述

成功之后,打开 Obsidian for Android。一般来说,Obsidian自动扫描到你克隆到手机的工作空间。如果没有扫描到,那么手动从 Obsidian 进入上述步骤设置的仓库路径,用作工作空间即可。

注意: 从手机端获取github上的文件是需要先通过MGit拉取的

MGit拉取文件步骤

fd5c6c44bdc8eda576967c8f085a4f7

be1a7a1eb1fdebfa357d874a8fd44c5

405877ea73cfb51b212e4599e319525

47fb94f2109c9f858a0e0ef255da8c5

参考文章

结语

这个是我为了实现obsidian在电脑端编辑,同时为了方便查看,又在手机端实现了同步,这个教程参考了他人的配置教程,给了我很多帮助,感谢这些贡献者!🌹🌹🌹

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值