Logseq电脑端+安卓端同步gitee或github

文章目录

  • 0.初衷
  • 1.电脑端
    • 1.1 新建仓库
    • 1.2 克隆项目,生成秘钥
    • 1.3 添加图谱,选择文件目录,我是原本就有笔记,所以会如下所示。
    • 1.4 下载脚本文件
    • 1.5赋权限 (windows可跳过)
    • 1.6 修改脚本命令
    • 1.7 logseq设置同步
    • 1.8 重启应用
  • 2.安卓端
    • 2.1 大致流程
    • 2.2 下载软件安装
    • 2.3 更新、下载包
    • 2.4 设置git权限,ssh
    • 2.5 赋予文件访问权限
    • 2.6 拉仓库
    • 2.7 添加图谱
    • 2.8 添加脚本
    • 2.9 添加快捷方式
  • 3.使用提升
    • 3.1 冲突解决
    • 3.2 插件

0.初衷

逛了一圈,csdn上的教程都要收费才能看,为啥搞得门槛那么高?

那不如我就来一篇教程吧,做的过程中确实遇到不少麻烦,但还是顺利解决了。

1.电脑端

mac和windows是同样的同步方式,此处以gitee为例,因为国内gitee更稳定。

1.1 新建仓库

首先在gitee创建自己的仓库,注意改为私有,别被别人知道了,如下图所示。
在这里插入图片描述

1.2 克隆项目,生成秘钥

使用ssh的方式,并且在电脑端生成相应的秘钥和公钥,不管是mac端还是windows端,都是在当前用户目录下的.ssh文档中生成的,然后根据提示,配置到网页端即可。
点击克隆在这里插入图片描述
克隆完毕后会出现一个空的,只带隐藏文件.git的目录。

1.3 添加图谱,选择文件目录,我是原本就有笔记,所以会如下所示。

在这里插入图片描述
在这里插入图片描述

1.4 下载脚本文件

打开自动提交的脚本网址 ,下载文件,在hook目录下,将post-commitpre-commit复制粘贴到本地的.git/hooks目录下。

1.5赋权限 (windows可跳过)

如果是mac需要执行命令,将其变成可执行文件。

  chmod +x ./pre-commit && chmod +x ./post-commit

1.6 修改脚本命令

如果是gitee 记得把post-commit的命令改为git push origin master,因为gitee默认的分支就是master,如果是github则不需要动,

1.7 logseq设置同步

打开 Logseq > 设置 > 版本控制 > 切换“启用 Git 自动提交”选项,可以更改自动提交的秒数,比如10s。

1.8 重启应用

10s后如果没有报错说明成功了,失败了请根据报错再看看是否与教程不同。

2.安卓端

2.1 大致流程

大致的流程是这样的,下载一个模拟linux环境的软件,安装git,ssh,秘钥,克隆仓库地址,logseq添加文件夹,最后通过脚本手动拉取或者推送仓库,实现手机端同步。

2.2 下载软件安装

首先我们需要做一些准备工作,下载这两个软件。
termux下载链接

termux-widget下载链接

termux主要是模拟linux环境的软件,可以下载一系列的小工具。
termux-widget主要是用来运行termux上的脚本,而不用我们一遍遍的敲代码拉取,推送。

2.3 更新、下载包

在termux界面中,输入apt update && apt upgrade,更新版本。
安装ssh,pkg install openssh
安装git pkg install git

2.4 设置git权限,ssh

设置你的git用户名和邮箱,模板如下。

git config --global user.name "xxx"
git config --global user.email xxxx@example.com

接着生成ssh秘钥
ssh-keygen -t rsa
查看公钥
cat ~/.ssh/id_rsa.pub
在手机上将这一串公钥复制到gitee的设置界面中。
在这里插入图片描述

2.5 赋予文件访问权限

一般情况下,我们进入的目录会在~下,如果没有,也可以通过cd ~/命令进入。
接着输入termux-setup-storage,点确定,让termux可以访问我们手机上的文件。

2.6 拉仓库

接着进入 进入shared目录,输入cd ~/storage/shared/
我们可以查看之前的地址,拉取仓库。
在这里插入图片描述
然后进入my-logseq目录,检查git是否能正常工作,比如输入git status
一般是有报错的,需要输入
git config --global --add safe.directory ~/storage/shared/my-logseq以在该文件夹上启用 Git 操作。(你换成自己的地址)。
它可能会报红框里的错误,复制执行下即可。
在这里插入图片描述
再次尝试下git命令应该就能成功了。

2.7 添加图谱

这个是logseq里的叫法,其实就是按照电脑端的步骤,将文件添加到logseq中。
在这里插入图片描述
在这个文件夹下就能找到了,界面显示的内容就是shared文件夹下的。

2.8 添加脚本

我们进入 ~/目录, 创建.shortcuts文件夹。
cd .shortcuts 进入目录。

安装vim包

pkg install vim

使用vim命令,命名为 pull-note.sh
vim pull-note.sh

在里面编写下面内容。

#!/usr/bin/bash
source ~/../usr/bin/source-ssh-agent
cd ~/storage/shared/my-logseq   #这里换成你的目录
git pull

接着再编写提交脚本
vim push-note.sh

#!/usr/bin/bash
source ~/../usr/bin/source-ssh-agent
cd ~/storage/shared/my-logseq   #这里换成你的目录
git add -A
git commit -m "sync from android"
git push

2.9 添加快捷方式

保存退出后,就要用到我们之前安装的Termux Widget软件了,它提供了一种快捷方式在手机桌面上调用脚本。

我用的是华为手机,两指往中间拉,弹出下面界面,点击服务卡片。
在这里插入图片描述
拉到最底下,窗口小工具。
在这里插入图片描述
找到Termux Widget,添加即可。
在这里插入图片描述
你会发现,在手机的最后,有下面的内容显示,就成功了。
在这里插入图片描述
这样,每次写完笔记就push一下,有笔记没更新就pull下就好。

注意,实际使用我发现,单单点击命令是无效的,还得在进termux才能让命令完全执行,所以我们可以在权限管理中,打开termux-widget的允许弹窗权限,它会打开termux执行命令,有无报错也会一目了然。

如果发现同步失败的,可以进入Termux 中查看,会有相应的报错信息的,说白了,这就是一个简易的调用命令的方式,不用想的那么复杂。

3.使用提升

3.1 冲突解决

在使用过程中,我经常会发现,手机端版本落后,导致最新笔记pull不下来,考虑到,大多情况下只会在电脑端记笔记,手机端记的较少,基本上读的较多,所以我们完全可以舍弃原本的提交,拉取远程最新笔记。

所以这就需要再新建一个脚本了。
手机端进入 ~/.shortcut目录,新建use-remote.sh文件,加入下面内容

#!/usr/bin/bash
cd ~/storage/shared/my-logseq
git fetch --all
git reset --hard origin/master

该命令先拉取最新的分支,然后将笔记强制设置为远程库的最新提交,如果说手机端笔记记了不少,那建议备份下,之后再做补充。

可能有同学问可以使用冲突合并啊,但有时候在手机端上确实不好操作,并不知道到底差异在哪里,这种做法在实际使用上更为靠谱,简单。

最后在Termux Widget快捷方式处,点击刷新,即可解决冲突。

ps:如果电脑端有冲突,比手机端解决来的方便很多,如果是手机端提交的代码比较重要,电脑端落后了,也可以使用上面的命令来解决。

3.2 插件

在电脑端使用的过程中,建议装一个git插件,有时候自动保存或者拉笔记没那么及时,可以在插件市场上安装git,使用也很方便,如下所示。
在这里插入图片描述
pull拉取最新提交,commit则是提交。

如果遇到什么问题可以给我留言,有时间我会回复的~

你选择记录什么,你才可能成为什么。记录、思考、总结多了之后,会慢慢形成一套自己的东西,也就逐渐沉淀为自己的价值观。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从大模型到Agentscope——Multi-Agent框架应用与开发

目录 大模型发展历程 大模型的缺陷 智能体 Agent的构建 模型计划内存工具 Agent到多Agent Multi-Agent 带来性能提升的同时也带来一些新的问题 流程设计鲁棒可靠多模态多系统提升运行效率 Multi-Agent框架 AgentScope Demo 三行代码实现聊天机器人 预告

Python与FPGA——sobel边缘检测

文章目录 前言一、sobel边缘检测二、Python sobel边缘检测三、FPGA sobel边缘检测总结 前言 边缘存在于目标、背景区域之间,它是图像分割所依赖的较重要的依据,也是图像匹配的重要特征。边缘检测在图像处理和计算机视觉中,尤其在图像的特征提…

C++进阶之路---多态(二)

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C从入门到精通》 《LeedCode刷题》 键盘敲烂,年薪百万! 一、多态的原理 1.虚函数表 // 这里常考一道笔试题:sizeof(Base)是多少? class Base { public:…

Vue首屏优化方案

在Vue项目中,引入到工程中的所有js、css文件,编译时都会被打包进vendor.js,浏览器在加载该文件之后才能开始显示首屏。若是引入的库众多,那么vendor.js文件体积将会相当的大,影响首屏的体验。可以看个例子:…

后端八股笔记------微服务篇

注册中心的主要作用:根据服务进行负载均衡,服务的健康监控。 服务雪崩,因为一个服务D的宕机,导致很多服务崩掉。 达到失败阈值----Closed_to_Open 服务降级------某一个接口 服务熔断------整个服务 限流常见的算法可以是令牌…

Upload 上传(图片/文件),回显(图片),下载(文件)

1.前端技术:V3 Ant Design Vue 2.后端技术:Java 图片上传/回显: 文件上传回显: 表结构:单文件/图片上传为A表对文件C表 (A表field字段 对应 C表id字段) 如图:A表中的 vehicle_d…

【测试工具系列】压测用Jmeter还是LoadRunner?还是其他?

说起JMeter,估计很多测试人员都耳熟能详。它小巧、开源,还能支持多种协议的接口和性能测试,所以在测试圈儿里很受欢迎,也是测试人员常用的工具,但是在企业级性能场景下可能会有性能瓶颈,更适合测试自己使用…

基于单片机的视觉导航小车设计

目 录 摘 要 I Abstract II 引 言 1 1 总体方案设计 3 1.1 方案论证 3 1.2 项目总体设计 3 2 项目硬件设计 4 2.1 主控模块设计 4 2.1.1单片机选型 4 2.1.2 STM32F103RCT6芯片 4 2.2单片机最小系统电路 5 2.3电机驱动模块设计 7 2.4红外模块设计 8 2.5红外遥控模块设计 9 2.6超…

一条 SQL 更新语句如何执行的

Server 层 存储引擎层 总流程 查询语句 连接器 查询缓存 分析器 优化器 执行器 更新语句 redo log(节省的是随机写磁盘的 IO 消耗(转成顺序写&#x…

动态规划刷题总结(入门)

目录 什么是动态规划算法 如何判断题目中将使用动态规划算法? 动态规划题目做题步骤 动态规划题目解析 泰波那契数模型 第 N 个泰波那契数 三步问题 使用最小花费爬楼梯 路径问题 不同路径 不同路径 Ⅱ 珠宝的最高价值 下降最短路径和 地下城游…

【Numpy】练习题100道(1-25题)

#学习笔记# 在学习神经网络的过程中发现对numpy的操作不是非常熟悉,遂找到了Numpy 100题。 Git-hub链接 目录 1 题目列表: 2 题解: 1 题目列表: 导入numpy包,并将其命名为np(★☆☆) 打印…

设计模式学习笔记 - 规范与重构 - 5.如何通过封装、抽象、模块化、中间层解耦代码?

前言 《规范与重构 - 1.什么情况下要重构?重构什么?又该如何重构?》讲过,重构可以分为大规模高层重构(简称 “大型重构”)和小规模低层次重构(简称 “小型重构”)。大型重构是对系统…

3.6研究代码(2)

指的是微电网运行参数。 在MATLAB中,randi([0,1],1,48) 会生成一个包含1*48个0或1的随机整数数组。这意味着数组中的每个元素都将是0或1。 MATLAB帮助中心:均匀分布的伪随机整数 - MATLAB randi - MathWorks 中国https://ww2.mathworks.cn/help/matlab/r…

Java零基础入门到精通_Day 1

01 Java 语言发展史 Java语言是美国Sun公司(StanfordUniversity Network)在1995年推出的 计算机语言Java之父:詹姆斯高斯林(ames Gosling) 重要的版本过度: 2004年 Java 5.0 2014年 Java 8.0 2018年 9月 Java 11.0 (目前所使用的) 02 J…

llama factory学习笔记

模型 模型名模型大小默认模块TemplateBaichuan27B/13BW_packbaichuan2BLOOM560M/1.1B/1.7B/3B/7.1B/176Bquery_key_value-BLOOMZ560M/1.1B/1.7B/3B/7.1B/176Bquery_key_value-ChatGLM36Bquery_key_valuechatglm3DeepSeek (MoE)7B/16B/67Bq_proj,v_projdeepseekFalcon7B/40B/18…

#LT8711V适用于Type-C/DP1.2/EDP转VGA应用方案,分辨率高达1080P。

1. 概述 LT8711V是一款高性能 Type-C/DP1.2 转 VGA 转换器,设计用于将 USB Type-C 源或 DP1.2 源连接到 VGA 接收器。 该LT8711V集成了一个符合DP1.2标准的接收器和一个高速三通道视频DAC。此外,还包括两个用于 CC 通信的 CC 控制器,以实现 …

文件服务器

文件服务器 # 构建NFS远程共享存储## 一、NFS介绍shell 文件系统级别共享(是NAS存储) --------- 已经做好了格式化,可以直接用。 速度慢比如:nfs,sambaNFS NFS:Network File System 网络文件系统&#xf…

C++面向对象..

1.面向对象的常见知识点 类、 对象、 成员变量(属性)、成员函数(方法)、 封装、继承、多态 2.类 在C中可以通过struct、class定义一个类 struct和class的区别: struct的默认权限是public(在C语言中struct内部是不可以定义函数的) 而class的默认权限是private(该权…

Windows虚拟机的安装

Windows系统 总结知识点记忆级别: 1级:熟练记忆讲过的所有知识点(按照授课顺序,笔记顺序来提问)2级:灵活应用所学知识点(不按照顺序提问,面临陷阱提问)3级:应用所学知识解决实际问题4级:扩展应…

24 深度卷积神经网络 AlexNet【李沐动手学深度学习v2课程笔记】(备注:含AlexNet和LeNet对比)

目录 1. 深度学习机器学习的发展 1.1 核方法 1.2 几何学 1.3 特征工程 opencv 1.4 Hardware 2. AlexNet 3. 代码 1. 深度学习机器学习的发展 1.1 核方法 2001 Learning with Kernels 核方法 (机器学习) 特征提取、选择核函数来计算相似性、凸优…