云端备份

云端备份 公开 已发布(自动)

如何安装动作?

适用于
分类(旧)
功能增强

xsn 用户0PhjeLihAwA vvr998 渴死的鱼。 单于轩昂 14 人赞了这个动作

2 个动作单 收藏了此动作。

更多信息
分享时间 2022-07-26 18:07
最后更新 2022-09-27 14:34
修订版本 12
用户许可 -未设置-
Quicker版本 1.34.26
动作大小 60.2 KB

分享到

「简单、方便、可靠的 sm 云端备份方案」

简介

示例 1
示例 2

缘由

本人没有任何 git 基础,花了较多时间来部署、折腾 git,此贴作为折腾记录。

我已经使用 git 同步了数百次,部署后相当平稳。

这篇综合了全网 sm + git 的各式相关文章,可能是你能找到的最完整的 sm+git 部署教程。

原理与优点介绍

用 git 来进行网络同步备份,用 bitshelter 来进行本地历史版本存储。支持多设备增量同步,多重保险确保数据安全。

不仅备份

我还用本文章涉及的脚本来帮助在多个设备间快速而无损的 sm 切换使用。

设备:GPD Pocket,又名 sm mobile (edited:如果想买的话从3代开始买

Git

git 是一个分布式版本控制软件,最开始用于程序员间的代码协作开发,能够确保每次同步都不会丢失文件。这点切中文件存储结构细碎而脆弱的 supermemo 的要害。

在上传到 github 后,每个版本都可以单独的下载

Git 属于增量同步的机制,部署后单次同步成本极低。

英文圈内已经有友人开发出了懒人式 PowerShell 脚本,我做了汉化以及改进,更降低了使用成本。

每天只需 20 秒,永远地摆脱数据丢失的风险

Bitshelter

部署见该链接。(别着急点,先往下看)

优点:无感知,低磁盘使用,支持文件占用时备份。

不选择网盘服务的理由

我曾经用过或测试过使用 OneDrive、坚果云、Dropbox、Google Drive、百度网盘来备份过文件。但无一例外,他们都缺乏对整个文件夹的版本控制的功能,并且不能确保每次同步都使所有文件完全上传。

在上述服务的使用中,我多次吃过集合损坏的亏。

——只要有少量文件在某次同步时未完全同步,supermemo 集合就会损坏。并且轻易无法恢复。


以下是具体配置过程

PowerShell 执行政策设置

如果你之前未运行过 PowerShell 脚本,则一会要运行的脚本很可能会在不产生任何结果的情况下快速关闭。此原因是PowerShell执行策略,默认情况下,不允许执行下载 Internet 的脚本。为了规避这一点:

  • 按下 Win + X 然后选择 “Windows 终端 (管理员)”
  • 输入以下代码然后按 Enter。若弹出提示,输入 Y 即可。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

从零开始,到 clone 仓库到本地的流程 (gitee 提供的容量限制较小,不建议使用)

  1. 从 Git官网 下载 Git,安装页面全点下一步。
  2. Git 全局配置:打开 cmd,(按 win 键后直接输入 cmd 即可找到) 输入以下代码

    2-1. 生成一个让自己的机器能通过网络访问库的钥匙。
ssh-keygen

之后请 enter 三下

2-2. 因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。因此,你需要分别粘贴以下两行代码到 cmd 上。

git config --global user.name "你随便输自己的英文名字"
git config --global user.email "你随便输自己的邮箱@qq.com"

这里输入、提交后,它会提示你填入密码。自己用的电脑就直接 enter 过去就行了。

3. 打开路径: c盘\用户\用户名\.ssh ,用记事本打开里面的 id_rsa.pub 文件,复制全部的内容。

4. 登录 github 账号,在该链接下进行如图所示的操作,让仓库识别刚才生成的钥匙。

下面那框粘贴 在 id_rsa.pub 文件复制到的全部内容

6. 新建 github 仓库,并复制 ssh 链接

这里不要把仓库名设置成跟 sm 根目录文件夹名一样

7. 在资源管理器中,打开到 sm18 文件夹的同目录,在地址栏中输入 cmd 并按 enter,打开该目录下的 cmd,输入以下代码,等待执行完成。

git clone 上一步复制的文本直接粘贴到这里

执行完成后你会发现生成出了一个新的文件夹在该目录

8. git clone 后将 sm 根目录移动到新生成的文件夹里边去。

配置 quicker 脚本

在 quicker 软件中安装该动作:云端备份

直接执行该动作或进入动作的右键设置中,参照下图的格式配置即可

格式仅供参考。仓库地址可填可不填,注意不是把上面的链接照抄。


大功告成!你现在可以通过该 quicker 来享受顺滑的 同步-学习 体验了。第一次上传备份会花费较多时间。

注意以及补充:

1、必须通过该 quicker 动作来启动 SM

2、不要在多个设备中同时打开该动作以及 SM

3、如果你不小心在使用尚未下载同步的旧版本的设备中点开了 sm,导致了版本间的冲突。可以使用动作右键设置中的“回退本地修改”来恢复

4、如果出现闪退,并且没有任何弹窗出现:请再看一遍本文目录中的 PowerShell 执行政策设置,结合下图

请见图中框选的部分

5、如果出现以下罕见异常 ssh: connect to host http://github.com port 22: Connection refused
该问题为网络问题,出现原因较为复杂,你可以考虑

1.重新执行一次脚本

2.可能是国内环境下 github 偶现的抽风问题,过一段时间就好

3.可能为DNS 解析错误

4.可能需要给 github 启用代理

踩雷 ssh: connect to host github.com port 22: Connection refused

Git设置代理

最近更新

修订版本 更新时间 更新说明
12 2022-09-27 14:34 1
11 2022-09-27 14:29 1
10 2022-08-09 14:24 1

最近讨论