用git使obsidian多端笔记互联/同步生存笔记(基于gitee) ...

打印 上一主题 下一主题

主题 1036|帖子 1036|积分 3108

近来不停利用obsidian来记笔记,有的时候用台式,有的时候用笔记本。近来研究了一些obsidian的同步方法,以为最方便的就是利用git去管理obsidian,下面来举行详细的介绍,纯保姆级教程,新手小白用刚买回来的电脑也可配置乐成。
一、下载git

进入git官网下载,一路next即可。(须要科学上网)

不推荐下载到C盘(默认C盘),我这里改为E盘。

之后不停点击next,不须要做任何改动。来到下面这个界面点击finish,会出现一个网页,关闭即可。

二、git配置


  • 按下【win+R】,输入sysdm.cpl,单击【确定】。
  • 点击【高级】内里的【环境变量】

  • 选择系统变量中的【Path】,点击编辑。

  • 找到git的安装目次,进入到bin文件夹中,复制该路径。

  • 点击【新建】,将刚才复制的路径粘贴进去,点击【确定】。

  • 查看是否安装乐成。
    命令行输入git -v

  • 创建gitee账号
    去gitee官网创建账号,登陆之后点击新建仓库。


8. 回到gitee的主页,在【代码】一栏可以看到【git全局配置】,内里有你自己的账号和邮箱

9. 配置用户名和邮箱
返回桌面鼠标点击右键,选择【open Git Bash here】

10. 在弹出的git命令窗口中输入git全局配置的命令

11. 查看是否设置乐成

12. 输入以下命令生成SSH公钥,一路回车。

13. 获取RSA公钥内容,并配置到SSH公钥中,复制弹出的全部内容。

14. 回到gitee主页,点击【设置】,把SSH公钥复制进去。点击【确定】并输入暗码。

三、配置obsidian


  • 点开obsidian,点开须要同步的仓库,如果没有,新建一个仓库,然后进入到须要同步的仓库的文件夹中。

  • 右键文件夹,点击【在终端中打开】,输入命令git init初始化本地仓库。

  • 回到gitee页面,复制gitee仓库的ssh地址

  • 输入命令git remote add origin加上刚才复制的ssh地址

  • 输入命令git pull 刚才复制的地址 master --allow-unrelated-histories,这是将本地的历史和长途的历史强行归并,避免报错。

  • 然后依次输入下面这几个命令,目标是创建master分支,以便后续上传。

    下方引号里的内容任意写

    下方引号中的master是分支名称,可以更改为别的,之后会弹出来Are you sure you want to continue connecting?,输入yes即可

  • 安装obsidian git插件(在插件市场中安装须要科学上网),安装后点击【启用】,之后再点击【选项】

  • 如果一切停当的话,点开gie插件的选项,可以看到如下界面,如果看不到,提示类似“git is not ready”之类的,请看下方遇到的问题或许会对你有所帮助。

  • 举行一些主动化上传和拉取的设置,我的设置如下,可以根据自己的须要举行设置。

  • 不出不测的话,现在可以将实现obsidian和长途gitee仓库的互联了,将本地内容上传到gitee之后,如果想把仓库中的内容同步到其它电脑上,在另一台电脑重复以上的第一部分和第二部分,在举行第三步之前在新电脑创建一个空文件夹看成obsidian的仓库,但先不要用obsidian打开它,用终端cd到新建的空文件夹中,去gitee网站上你的仓库中点击右方的克隆\下载,复制下载代码请复制以下命令到终端实行中的代码到终端中去运行,目标是将gitee仓库中的东西下载下来(注意复制之前一定要确定本地文件夹是空文件夹,要不背面同步上传的时候会出现文件冲突)。

  • 下载下来之后,用obsidian中的打开本地仓库打开这个文件夹,可以看到之前的obsidian的主题以及插件设置之类的都被同步过来了,接着对obsidian中的git插件举行对应的设置即可。点击commit and sync测试一下,有如下的提示代表乐成。如果文件拉取报错或者提示文件冲突,请看下方遇到的问题或许会对你有所帮助。

四、遇到的问题


  • 在笔记本上利用git将obsidian中的笔记上传到gitee中却发现在台式机上git不可用。
    办理办法:仔细查看本教程全部的操作是否在新电脑中逐一举行,我配置的时候提示git不可用,最后的缘故起因是由于我没有将本地的历史和长途的历史强行归并。看三(5),输入命令git pull 刚才复制的地址 master --allow-unrelated-histories。
  • 在从gitee中下载文件到新电脑中突然停止了传输,报错提示
    fetch-pack: unexpected disconnect while reading sideband packet fatal: early,这个缘故起因通常是由于gitee中的文件较大所导致的。
    办理办法:起首确定gitee下载到的本地文件夹现在是空文件夹,如果不是(偶然候停止传输会主动创建一个空的仓库文件夹),请先清空。然后终端cd到这个空文件夹中,输入
    git config --global http.postBuffer 524288000,目标是增加缓存空间。然后利用https的方法再下载一次试试(之前教程中的是SSH方法)。

  • 如果在配置obsidian的过程中git插件报错(除了workspace.json文件报错,其余文件报错也是如此,主要是workspace.json文件)
    Pull failed (merge): Updating 272d342…4a831bb
    error: Your local changes to the following files
    would be overwritten by merge:
    .obsidian/workspace.json
    Please commit your changes or stash them
    before you merge.
    Aborting
    这个错误通常是你在两个电脑上同时开启了obsidian,并且在一台电脑的文件更新还未上传到gitee之前就在别的一台电脑的obsidian上举行了本地修改。这样会导致文件历史冲突。
    办理办法:


  • 起首将两台电脑中的obsidian的git插件的设置设置到初始设置,关闭主动同步。关闭未报错电脑的obsidian(一样平常是一个电脑可以正常上传到gitee,但别的一台电脑在实行主动拉取操作的时候出现文件历史冲突)
  • 然后终端cd到报错的obsidian文件夹中,依次输入以下命令(此方法的原理是强行将长途仓库的文件覆盖本地文件,大概会导致文件夹中未在长途仓库中的本地文件丢失):

    • 获取长途更新
      git fetch origin
    • 强制覆盖本地文件
      git checkout origin/master -- .obsidian/workspace.json
    • 提交修改
      git add .obsidian/workspace.json
      git commit -m "Update workspace.json to match remote version"
    • 推送更改到长途仓库(可选,这个操作强制使未报错的电脑的本地文仓库和gitee仓库划一,确保三方文件划一)
      git push origin master
    • 之后点击点击commit and sync测试一下,有如下的提示代表乐成。

    • 之后把两台电脑的obsidian中的git插件设置成主动同步即可,以后在利用的时候要特别注意不要在两台电脑同时对obsidian举行更改,在其中一台电脑上做完更改后一定要等他同步到长途仓库后才可对别的一台电脑的obsidian举行更改,且在对别的一台电脑的obsidian更改之前要先从gitee上实行一下拉取操作,使gitee中的文件同步到本地之后才可举行更改,否则会发生文件冲突,文件冲突主要发生在workspace.json文件中,由于这个文件包罗了obsidian的本地工作区的设置,好比打开obsidian主动打开上一次打开的文件等,对obsidian的任何动作大概都会被记载到这个文件中。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

络腮胡菲菲

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表