实现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

3) 最后再克隆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仓库了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/388630.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis 初步认识

目录 1. 概述 2. 数据结构 3. 使用方式 4. 优势 1. 概述 Redis (Remote Directory Server)是一个开源的基于内存的数据存储系统; 可以用作数据库缓存和消息队列等各种场景,也是目前最热门的 NoSQL 数据库之一; 早…

LeetCode3. 无重复字符的最长子串(java实现)

今天分享的题目是LeetCode3. 无重复字符的最长子串,来看题目描述: 无重复的最长子串,题目有可能有些小伙伴没读太懂,其实就是找到不重复的最长子串,比如eg3,pwwk,那么w出现了两次就不符合要求。…

Spring源码- context:component-scan base-package标签的作用源码解析

1.扫描包路径下所有的类加载解析成bean定义信息 ClassPathBeanDefinitionScanner .doScan方法调用路径 doScan:276, ClassPathBeanDefinitionScanner (org.springframework.context.annotation) parse:95, ComponentScanBeanDefinitionParser (org.springframework.context.a…

C语言第九天笔记

数组的概念 什 么是数组 数组是 相同类型, 有序数据的集合。 数 组的特征 数组中的数据被称为数组的 元素,是同构的 数组中的元素存放在内存空间里 (char player_name[6]:申请在内存中开辟6块连续的基于char类 型的变量空间) 衍生概念&…

ClkLog:开源用户行为分析框架,让数据分析更轻松

ClkLog:开源用户行为分析框架,让数据分析更轻松 在数据驱动的时代,找到一个好用的用户行为分析工具真是难上加难。但是今天你有福了,开源免费的 ClkLog 就是你的不二选择!本文将为你详细介绍 ClkLog 的功能特点、技术架…

【初阶数据结构篇】冒泡排序和快速排序(中篇)

文章目录 冒泡排序和快速排序前言代码位置冒泡排序快速排序递归法实现hoare版本挖坑法lomuto前后指针递归法复杂度分析 非递归法实现 冒泡排序和快速排序 前言 本篇以排升序为例 代码位置 gitee 冒泡排序 动图理解 作为第一个接触的排序算法,冒泡排序想必大…

OpenCV 图像处理 轮廓检测基本原理

文章目录 基本原理关键函数和参数注意事项 示例代码示例效果代码详解findContours 函数原型findContours函数变体 基本原理 轮廓发现是图像处理中的一个重要步骤,用于检测物体的边界和形状。 图像预处理: 轮廓发现通常在灰度图像上进行。因此&#xff0…

程序员转型AI大模型好转吗?成功率高吗?

前言 在程序员圈子中,技术转型近年来一直是热门话题。随着AI技术的迅猛发展,优秀人才短缺,程序员向AI大模型转型似乎成为了一条通往职场先机的路径。但是,这条转型之路是否容易走,成功率又如何呢? 一、程…

SSM大学生体质管理系统-计算机毕业设计源码75960

摘要 基于SSM的大学生体质管理系统是一款综合性平台,融合了在线课程、健康知识、体测报告等多项功能,旨在为广大大学生提供全方位的健康管理服务。通过在线课程和健康知识模块,用户可以随时学习健康知识,掌握科学的健康管理方法&a…

大屏自适应方案

1.npm下载 npm i autofit.js2.在项目中引入 import autofit from autofit.js3.init()初始化,注意:要在mounted()里

通过阿里云OOS“快速设置”快速配置多地域运维任务

1. 介绍 什么是系统运维管理OOS? 系统运维管理OOS(CloudOps Orchestration Service)是阿里云提供的一项云上自动化运维服务,旨在帮助用户实现运维任务的自动化管理和执行。通过OOS,用户可以设计模板来详细定义执行任务的内容、…

微型丝杆弯曲:工件精度下降的隐形杀手!

微型丝杆作为精密机械部件,‌其弯曲或变形会对使用它进行加工的工件产生直接影响。在机械加工中,微型丝杆弯曲是一个不容忽视的问题,它会对工件造成多方面的损害。 1、加工精度受损:弯曲会直接导致工具的实际运动轨迹与程序设计的…

【软件建模与设计】-07-静态建模

目录 1、类之间关系 1.1、关联 1.1.1、关联的多重性 1.1.2、三元关联 1.1.3、一元关联 1.1.4、关联类 2、组合与聚合层次 2.1、组合 2.2、聚合 3、泛化/特化层次 4、约束 5、静态建模和UML 5.1、问题域的静态建模 6、系统上下文的静态建模 7、使用UML构造型对类…

【Python学习手册(第四版)】学习笔记12-if语句(and、or、三元表达式)详解

个人总结难免疏漏,请多包涵。更多内容请查看原文。本文以及学习笔记系列仅用于个人学习、研究交流。 本文较简单,对if语句的格式、示例、多路做了示例,以及真值测试(and、or等)介绍,最后介绍了三三元表达式…

8G内存的Mac够用吗 ?苹果电脑内存满了怎么清理?可以有效地管理和优化你的Mac电脑内存,确保设备运行流畅

嘿,朋友们,让咱们聊聊怎么让我们的Mac小伙伴时刻保持巅峰状态吧!想象一下,每一次点击、每一次滑动,都如同初见时那般丝滑顺畅,是不是超级心动?为了这份持久的畅快体验,我强烈推荐大家…

注册中心--Eureka

🎥 个人主页:Dikz12🔥个人专栏:Spring Cloud实战📕格言:吾愚多不敏,而愿加学欢迎大家👍点赞✍评论⭐收藏 目录 1.项目问题 2.解决URL问题 2.1解决思路 2.2注册中心 2.3 CAP理…

2024.8.1 作业

使用两个线程完成两个文件的拷贝,分支线程1拷贝前一半,分支线程2拷贝后一半,主线程回收两个分支线程的资源 代码: /*******************************************/ 文件名:threadwork.c /************************…

06.java集合

1.集合框架体系 集合主要分为两组:单列集合(collection),双列集合(map) 单列集合(collection接口) 双列集合(map接口) 2.Collection接口 (1).常见的方法 */ public class arraylist_ {public static void main(String[] args) {//常用方法&#xff0…

Day81 代码随想录打卡|贪心算法篇---跳跃游戏 II

题目&#xff08;leecode T45&#xff09;&#xff1a;给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说&#xff0c;如果你在 nums[i] 处&#xff0c;你可以跳转到任意 nums[i j] 处: 0 < j…

【Linux】(26) 详解磁盘与文件系统:从物理结构到inode机制

目录 1.认识磁盘、 1.1 理论 1.2 磁盘的物理结构 CHS 寻址 1.3 磁盘的逻辑抽象结构 2. inode 结构 1.Boot Block 启动块 2.Super Block&#xff08;超级块&#xff09; 3.Group Descriptor Block&#xff08;块组描述符&#xff09; 4.Data Blocks (数据块) 5.Inode…