系统和软件版本
名称 | 版本 |
---|---|
Obsidian | 1.5.3 |
华为HarmonyOS | 4.0.0 |
Git | 2.43.0-64-bit |
MGit | 1.7.0(手机端) |
F-Droid | apk(手机端) |
安装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
,后续以这个仓库为例进行说明。
默认的插件市场是需要VPN的,如果有插件的需要可以用pkmer这个插件市场下载插件,这个不需要VPN
pkmer
链接: PKMer
安装git
安装包可以去官网下载或者使用我上面给的链接
安装好后要找到这个应用,一会儿要用到
使用github
首先要注册一个github账号,记住自己的用户名
和注册时使用的邮箱
,这个注册的教程网上可以查阅,这里就不写了。
点击右上角的头像->再点击Settings,在这里可以看到和找到自己的用户名和邮箱。
使用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_rsa
和id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,不能泄露出去,id_rsa.pub
是公钥,可以放心地告诉任何人。
将公钥id_rsa.pub
用记事本打开,复制后粘贴到github中存放公钥的地方:
点击NEW SSH KEY
进行粘贴
✨现在在github上创建一个仓库,用来存放我们要上传的文件:
点击右上角的+号->选择New repository
我这里的仓库名字是obsidian
和本地仓库名相同,属性选择私有,点击Create repository
注意:这里除了这两个地方需要改动,不要动其他的选项
✨初始化本地仓库:
通过git init
命令把这个目录变成Git可以管理的仓库
进入到刚刚创建的本地仓库obsidian
$ cd e:\obsidian
一定要进入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格式文件。
添加文件到Git仓库,分两步:(这里要在obsidian本地仓库中进行)
第一步
$ git add readmetxt.txt
第二步
$ git commit -m "add files."
"add files."这个代表一个提交说明,可自定义,但要用引号。
将本地仓库的内容推送到GitHub仓库:
$ git push -u origin main
由于远程库是空的,我们第一次推送main
分支时,加上了-u
参数,Git不但会把本地的main
分支内容推送的远程新的main
分支,还会把本地的main
分支和远程的main
分支关联起来,在以后的推送或者拉取时就可以简化命令。
如果报错的信息如下:
这是由于将本地的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
这里你可能会遇到下面说的问题:
注意:Are you sure you want to continue connecting (yes/no)?这里一定要输入yes
,不能直接回车,因为回车代表no
上面的过程可以看出,想使用git提交到远程仓库需要先添加后推送。
添加文件到Git仓库,分两步:
- 使用命令
git add <file>
,注意,可反复多次使用,添加多个文件; - 使用命令
git commit -m <message>
,完成。
推送可以使用命令git push origin main
一次性完成,但是添加文件如果很多则很繁琐,可以搭配git提交的图形化界面来便捷完成。
Sourcetree的使用
下载安装后,打开Sourcetree.
第一次运行SourceTree时,SourceTree并不知道我们的Git库在哪。如果本地已经有了Git库,直接从资源管理器把文件夹拖拽到SourceTree上,或者选择打开文件夹,就添加了一个本地Git库:
我们双击obsidian
这个本地库,SourceTree会打开另一个窗口,展示这个Git库的当前所有分支以及文件状态。选择左侧面板的“WORKSPACE”-“File status”,右侧会列出当前已修改的文件(Unstaged files):
✨在使用之前首先要导入公钥,步骤如下
工具->选项
这里的id_rsa是公钥
✨使用sourcetree进行提交文件
点击文件状态->暂存所有
在下面文本框输入提交说明,再点击提交
提交成功后点击推送
下面显示的就是推送成功了
手机端同步
所用软件
- obsidian app
- MGit
MGit设置
MGit配置步骤:
- 在设置界面的「repos 的根存储位置」拟用于存放 Android 设备上 Obsidian 笔记的路径
- 在设置页面,点击「SSH Keys」>「+」,新建 SSH 密钥
- 自己用英文命名密钥的文件名(比如MGit)—>点击生成密钥—>将生成的密钥上传到github上面的SSH keys
将手机上MGit的密码粘贴到giuhub上:
4. 从GitHub 复制 SSH Remote 地址(在仓库主页面点击「下载/克隆」(GitHub 点击「Code」)查看),填入远程地址,点击克隆。
成功之后,打开 Obsidian for Android。一般来说,Obsidian自动扫描到你克隆到手机的工作空间。如果没有扫描到,那么手动从 Obsidian 进入上述步骤设置的仓库路径,用作工作空间即可。
注意: 从手机端获取github上的文件是需要先通过MGit拉取的
MGit拉取文件步骤
参考文章
- 用 Git 在 Android 和 Windows 间同步 Obsidian 数据库 - 少数派 (sspai.com)
- 用Mgit在Android上通过git来同步&Pull ( Mgit初始化 ) (更推荐用obsidian-git)(至今个人暂时不使用同步功能) - 经验分享 - Obsidian 中文论坛
- obsidian和Git连用实现版本控制(obsidian Git插件介绍) by 软通达 - Obsidian中文教程 - Obsidian Publish
- Git教程 - 廖雪峰的官方网站 (liaoxuefeng.com)
结语
这个是我为了实现obsidian在电脑端编辑,同时为了方便查看,又在手机端实现了同步,这个教程参考了他人的配置教程,给了我很多帮助,感谢这些贡献者!🌹🌹🌹