ios上使用iSH的git同步obsidian

没错 ,有working copy能帮助同步,但不是每个人都愿意使用付费软件的。如果你觉着working copy花的值那你就使用吧,我是坚决不会用的。同时我坚信大多数的同胞们永远不会花128元买任何不必须的软件,另外我更愿意把git同步交给开源软件,而不是working copy这样的付费软件。

本篇文章的目的是帮助不愿意花钱也想使用笔记git同步的人,如果能帮助的十个人就能节省十个working copy的钱,如果能帮助一百个、一千个甚至一万个人呢,或许会节省12800元,128000元,1280000元。

ios上使用iSH的git同步obsidian

准备工作

  1. ios手机或者ipad一部,appstore下载安装iSH和obsidian
  2. 打开iSH,进行初始更新apk update
  3. 安装好以下软件:git、vim、openssh、openrcapk add 文件名
  4. 打开obsidian创建仓库,例如命名为math,关闭icloud同步
  5. 创建好git平台账号,并创建私人仓库,例如名为math,复制出ssh地址

打开ish操作

  1. 设置和托管平台一致的用户名 git config --global user.name "你注册GitHub账号的名字"
  2. 设置和平台一致的邮箱 git config --global user.email "你注册GitHub账号用的邮箱"
  3. 查看公钥 cat ~/.ssh/id_ed25519.pub
  4. 如果没有就生成公钥 ssh-keygen -t ed25519 -C "<注释内容>"
  5. 再次查看显示公钥 cat ~/.ssh/id_ed25519.pub
  6. 从ssh开始选中进行复制操作

托管平台操作:

配置公钥至托管平台

iSH操作

  1. 用vim打开配置文件vim /etc/ssh/sshd_config
  2. 要使用root用户远程管理,需要修改参数为:PermitRootLogin yes(前面不加#号)
  3. 检查ssh是否启动 rc-service sshd restart
  4. ish建立obsidian文件夹 cd ~ && mkdir obsidian
  5. 选择手机本地obsidian文件夹装载到ish上,不要选择里面的math文件夹。 mount -t ios . obsidian
  6. cd进入math库内使git初始化 git init
  7. 禁用安全目录git config --global --add safe.directory /root/obsidian/math
  8. 将本地分支命名为main,git branch -M main (github等平台不能用master作为分支名称。而codeup等平台可以使用master,需要将下面的命令中的main改为master就行)
  9. 链接你的空仓库地址 : git remote add origin 仓库地址 ssh地址

同步与更新循环步骤:

  1. 先进行拉取 git pull origin main如果出错尝试忽视历史拉取 git pull origin main --allow-unrelated-histories
  2. 进行笔记的编辑与修改。
  3. 将修改添加到缓存区 git add .
  4. 添加这次备注信息 git commit -m '新添加的文件内容描述'
  5. 推送到平台上 git push origin main

注意:

  1. 设置允许空提交git commit -m "initial commit" --allow-empty
  2. 删除iSH的obsidian文件前请先卸载obsidian
4 个赞

请问一下用Working Copy是不是能直接达到以上效果?

没问题,我用这这个方案

可以,相比 iSH 多花点钱但更简便。

感谢大佬,按照您的方法配置成功了。 :rose: :rose: :rose:

太强了大佬,从头到尾下来一遍成功,搭建知识库的话用git同步很合适,终于知道怎么在移动端用git了!!

1 个赞

这2个方法是不是还是得自己手动推拉同步?不能像PC端那样使用git插件直接自动提交和推送?

感谢您的方法,但是我遇到一些问题。
当我修改项目中的文件时,git add filename正常速度运行。
但是当我填加新的文件时,git add newfilename请问您遇到类似的问题么?
我猜测和iSH中的路径挂载到IOS系统中的目录中的缘故,但是我无法具体解释和解决。

配置git插件,就像pc端一样自动

您好,想请问一下如何设置在ios系统中配置Obsidian git 插件 呢,我在ish软件中成功可以执行git pull,但是在ob中用git pull命令弹出以下内容

要用http协议的git地址,不能使用ssh协议