没错 ,有working copy能帮助同步,但不是每个人都愿意使用付费软件的。如果你觉着working copy花的值那你就使用吧,我是坚决不会用的。同时我坚信大多数的同胞们永远不会花128元买任何不必须的软件,另外我更愿意把git同步交给开源软件,而不是working copy这样的付费软件。
本篇文章的目的是帮助不愿意花钱也想使用笔记git同步的人,如果能帮助的十个人就能节省十个working copy的钱,如果能帮助一百个、一千个甚至一万个人呢,或许会节省12800元,128000元,1280000元。
ios上使用iSH的git同步obsidian
准备工作
- ios手机或者ipad一部,appstore下载安装iSH和obsidian
- 打开iSH,进行初始更新
apk update
- 安装好以下软件:git、vim、openssh、openrc
apk add 文件名
- 打开obsidian创建仓库,例如命名为math,关闭icloud同步
- 创建好git平台账号,并创建私人仓库,例如名为math,复制出ssh地址
打开ish操作
- 设置和托管平台一致的用户名
git config --global user.name "你注册GitHub账号的名字"
- 设置和平台一致的邮箱
git config --global user.email "你注册GitHub账号用的邮箱"
- 查看公钥
cat ~/.ssh/id_ed25519.pub
- 如果没有就生成公钥
ssh-keygen -t ed25519 -C "<注释内容>"
- 再次查看显示公钥
cat ~/.ssh/id_ed25519.pub
- 从ssh开始选中进行复制操作
托管平台操作:
配置公钥至托管平台
iSH操作
- 用vim打开配置文件
vim /etc/ssh/sshd_config
- 要使用root用户远程管理,需要修改参数为:
PermitRootLogin yes
(前面不加#号) - 检查ssh是否启动
rc-service sshd restart
- ish建立obsidian文件夹
cd ~ && mkdir obsidian
- 选择手机本地obsidian文件夹装载到ish上,不要选择里面的math文件夹。
mount -t ios . obsidian
- cd进入math库内使git初始化
git init
- 禁用安全目录
git config --global --add safe.directory /root/obsidian/math
- 将本地分支命名为main,
git branch -M main
(github等平台不能用master作为分支名称。而codeup等平台可以使用master,需要将下面的命令中的main改为master就行) - 链接你的空仓库地址 :
git remote add origin 仓库地址
ssh地址
同步与更新循环步骤:
- 先进行拉取
git pull origin main
如果出错尝试忽视历史拉取git pull origin main --allow-unrelated-histories
- 进行笔记的编辑与修改。
- 将修改添加到缓存区
git add .
- 添加这次备注信息
git commit -m '新添加的文件内容描述'
- 推送到平台上
git push origin main
注意:
- 设置允许空提交
git commit -m "initial commit" --allow-empty
- 删除iSH的obsidian文件前请先卸载obsidian