基于Git实现跨系统、多设备的Obsidian Vault同步(免费、高效、稳定)

基于Git实现跨系统、多设备的Obsidian Vault同步(免费、高效、稳定)

一、Motivation

研一rookie,使用Obsidian来管理包含日报、论文、阅读笔记等在内的工作流,希望在自己的笔记本和实验室的办公电脑上同步自己的Vault,获得随时可记、随处可读、设置一致的流畅体验。

二、基本情况

  • 笔记本电脑:Dell G3 + Windows 10 Version 22H2
  • 实验室电脑:Intel NUC + Ubuntu 20.04.6LTS
    在这里插入图片描述

注意:在Ubuntu下应使用Appimage的方式安装Obsidian,这是Obsidian-Git插件全面支持且推荐的安装方式

三、实现思路

  1. 使用Git进行版本控制
  2. 将Vault托管到远程仓库(如Github、Gitee等),通过跟踪(add)新文件、推送(push)修改和拉取(pull)更新等操作实现各设备间的同步
  3. 使用集成在Obsidian内的第三方插件’Git’实现便捷的自动备份等进阶的功能

四、操作步骤

以原设备为Windows设备,将Vault克隆到Ubuntu上并实现两设备的日常同步为例

(1)安装Git

a.在Windows上安装
方法一

Git的官方网站下载最新的官方版本
在这里插入图片描述

方法二

习惯使用winget的朋友也可以在命令行或Powershell中输入如下代码来安装Git:
winget install --id Git.Git -e --source winget

b.在Ubuntu上安装

打开终端(Ctrl+Alt+T),输入如下代码:
$ sudo apt install git-all

(2)用Git对现有Vault进行版本控制

如果你是初次使用Git,需要配置用户基本信息,这不是本文主要讨论的内容,请参阅参考资料1。

  1. 在需要进行版本控制的文件夹单击右键打开Git Bash在这里插入图片描述
    在这里插试一下入图片描述

  2. 初始化Git仓库
    $ git init
    该命令将创建一个名为 .git 的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件,这些文件是Git 仓库的骨干。 但在这个时候仅做了一个初始化的操作,项目里的文件还没有被跟踪。通过 git add 命令来指定所需的文件来进行追踪。然后执行git commit操作。

$ git add YOUR_FILE
$ git add YOUR_DIRECTORY/
$ git commit -m 'initial project version'

此时使用$ git status命令查看,会发现所有已跟踪文件在上次提交后都未被更改。现在可以将commit后的仓库推送至远程了。
在这里插入图片描述

(3)将本地项目提交至远程仓库

a.以Github为例创建远程仓库
  1. 点击页面右上角↗的➕选择“New repository”
    在这里插入图片描述
  2. 为自己的远程仓库填写一个名字,设置权限为私有(如果你不想让人人都可以共享你的仓库的话),最后点击右下角的创建即可。
    在这里插入图片描述
b.在本地添加远程仓库
  1. 获取远程仓库的链接
    在这里插入图片描述
  2. 在Git Bash中运行:
git remote add <shortname> <url>

其中shortname是你自己给远程仓库起的简洁的别名,url是你远程仓库的链接
然后运行$ git remote -v可以看到远程仓库添加成功
在这里插入图片描述

c.提交至远程仓库

我给远程仓库的别名是origin,我在远程仓库的默认分支是master,则我可以在Git Bash中运行如下代码来完成推送:

$ git push origin master

运行后会弹出身份验证,可以通过浏览器进行授权(可以使用移动端的Github,也可以使用账号密码认证,跟着提示做就好),也可以通过生成的Personal access token认证(后文会提到)
推送成功会有如下类似的显示:
在这里插入图片描述

(4)使用Obsidian中的Git插件来便捷操作

前述操作已经成功实现了远端同步,但并不简洁方便,使用插件来将Git的操作集成在Obsidian里

  1. 关闭安全模式,在第三方插件市场中搜索“Git"(作者为Vinzent),安装并启用。
    在这里插入图片描述
  2. 重启Obsidian后,打开已经初始化为Git仓库的Vault,插件会自动识别并询问你是否链接到该仓库,选择是。(操作快捷简单以至于甚至没来得及截图)
  3. 在侧边栏打开”Git source control“,可以清晰、方便地进行版本控制了,比如现在:
  • 检查到如下更新(Changes),点击➕,将所有变更都Stage
    在这里插入图片描述
  • 如果确认这些变更都没问题,都是你想要的,可以点击√将其全部Commit
    在这里插入图片描述
  • 最后点击Push将所有经过Commit的变更都推送到远程仓库
    在这里插入图片描述
  • 推送成功!
    在这里插入图片描述

(5)在其他设备克隆远程仓库

  1. 下载Obsidian(如果是在Linux系统上,一定要选择Appimage的安装方式!),安装好Git插件
  2. 生成Personal access tokens (classic)
  • 设置->最左下方的开发者设置->Personal access tokens (classic)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 一定要记下这串Token,因其只显示一次
    在这里插入图片描述
  1. 打开Obsidian,使用Ctrl+P打开命令菜单,搜索并选择”Git:clone an existing remote repo“
    在这里插入图片描述
    按如下方法组合你的Token和url:
    在url的https://后插入你的Token+@
    形如:https://ghp_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX@github.com/YOUR_USERNAME/YOUR_PROJECT.git
  2. 按提示选择克隆的目标文件夹
  3. 静待克隆,直到出现克隆完成,重新启动的提示
    在这里插入图片描述
  4. 重启Obsidian,享受丝滑的同步体验!

五、参考资料

  1. Pro Git官方指南,简洁清晰,可免费下载或在线阅读,有简体中文版
  2. The Easiest Way to Connect Your Obsidian Vault with Github | Linked Blog Starter
  3. The Easiest Way to Setup Obsidian Git (4 Minutes)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值