📝

Obsidian Gitのコンフリクトについて

に公開

デスクトップとモバイルで同期しているとコンフリクト(競合)がどうしても発生する。
モバイルでCLIアプリ入れて、解消する方法があるが、毎回は手間です。

他の回避方法はブランチを他のブランチに変えるのもあるが、それまでの変更を捨てることになる。

なので、デスクトップとモバイルでブランチを分けて、デスクトップ作業時にモバイルの内容を取り込み、それをモバイル側のブランチにも反映する。
少し手間にはなるが、コンフリクトにいらいらするよりはマシかなと。
公式のプラグインならその手間もなさそうだけど、試したことない・
.gitignoreも試したが、メモ自体のコンフリクトは防げない

具体的な流れは以下

  1. デスクトップ用、モバイル用のブランチを作成
  • 例:desktop, mobile
  1. デスクトップ、モバイルのObsidianでそれぞれのブランチを指定する
  2. それぞれの端末の更新はそれぞれのブランチにプッシュしておく
  3. デスクトップで作業時にモバイルのブランチの内容をgit merge(またはObsidian GitのPull機能)で取り込み、コンフリクトがあれば手動で修正
  4. デスクトップのブランチをモバイルのブランチにもPush
  5. モバイルでPull (これにより内容が同期されます)

追記 2025/09/04

Obsidianで画像や重めのファイル同期したら、AndroidのObsidianで同期したらアプリが落ちる様になった。。gitでブランチを戻したり、AndroidのObsidianを入れ直しても、落ちてしまう。(なぜーーー)

なので現在はGoogleドライブにフォルダを置いて同期している。
逆にストレスフリーになった!
Androidは以下を使用して自動同期している。
https://play.google.com/store/apps/details?id=com.ttxapps.drivesync&hl=ja

ちなみにPCのObsidianでは一応Gitにもバックアップするようにしている。

Discussion