Obsidian Vaultを複数デバイスで自動同期する
ねむねこ(ゆるいアウトプット)による、iPhone/iPad と Windows PC 間で Obsidian Vault を 完全自動で同期する 方法の解説記事。iOSのショートカットアプリと Working Copy(Gitクライアント) を組み合わせて、Obsidian の起動・終了をトリガーに Git Pull / Commit+Push を自動実行する。iPhoneとWindowsのObsidian Vaultを同期する の続編(手動同期の自動化編)。
概要
- ゴール: PCとiPhone(iPad)間のVaultの変更が自動で同期されている状態
- 前提: Working Copy(Gitクライアント) で手動同期できている状態(iPhoneとWindowsのObsidian Vaultを同期する 参照)
- コスト: Working Copy が買い切り有料(2023年12月現在 ¥4,000)
必要なもの
| アイテム | 備考 |
|---|---|
| iPhone / iPad | iOS/iPadOS |
| Obsidian アプリ(App Store) | ver 1.4.16 で確認 |
| ショートカットアプリ | iOS 標準アプリ |
| Working Copy アプリ | ver 5.8.8 で確認・買い切り有料 |
| Git リポジトリ(Vault をバックアップ済み) | GitHub 等 |
自動Pull設定(Obsidian を開いたとき)
ショートカットの作成
- ショートカットアプリで新規作成
- 「Pull Repository」アクションを追加
- Vault が入っているリポジトリを選択(Remote は「Default」のまま)
- 任意の名前を付けて「完了」
オートメーションの作成
- ショートカットアプリ → オートメーション → 新規作成
- トリガー: 「アプリ」→ 「Obsidian」・実行タイミング「開いている」
- 「すぐに実行」を設定
- 作成したPullショートカットを選択
変更差分がない場合はスキップされる。エラー時は通知が来る。
自動Commit+Push設定(Obsidian を閉じたとき)
ショートカットの作成
- 新規ショートカットを作成
- 変数アクション: デバイス名を変数に保存(「デバイスの詳細 → 名前」)
- 例: 変数名「Device」にiPhone SE の名前を格納
- 「Commit Repository」アクションを追加しリポジトリを設定
- Message:
Vault autocommit on [Device変数]→ 例:Vault autocommit on iPhone SE - What to Commit:
modified - Fail when nothing to Commit: オフ
- Sign: オフ
- Message:
- 「Push Repository」アクションを追加
- 任意のショートカット名を付けて「完了」
オートメーションの作成
- 新規オートメーション → トリガー: 「アプリ」→「Obsidian」・実行タイミング「閉じている」
- 「すぐに実行」を設定
- 作成したCommit&Pushショートカットを選択
変更差分がない場合はスキップされる。
まとめ・評価
- ショートカット2本+オートメーション2本で完全自動化が実現
- Working Copy の買い切り課金(¥4,000)が唯一のコスト
- 著者評価: 「一番リーズナブルな自動同期の方法」
- たまにエラーが起きるが再実行で解決