このページでは、[[Obsidian Syncの紹介|Obsidian Sync]]で遭遇する可能性のある一般的でない問題とその解決方法を紹介します。先に進む前に、[[ステータスアイコンとメッセージ]]と[[よくある質問]]のページを確認することをお勧めします。
## 一般
### 競合の解決
競合は、2台以上のデバイスで同期前に同じファイルを変更した場合に発生します。たとえば、コンピュータでノートを編集した後、その変更がアップロードされる前に、スマートフォンでも同じノートを変更した場合です。
オフラインで作業する場合、競合はより頻繁に発生します。変更が多く、同期間の時間が長いため、競合の可能性が高くなります。
#### Obsidian Syncの競合の処理方法
Obsidian Syncが競合を検出した場合、結果はファイルの種類によって異なります:
- **Markdownファイル**:Obsidian SyncはGoogleの[diff-match-patch](https://github.com/google/diff-match-patch)アルゴリズムを使用して変更を統合します。
- **その他のファイル**:Canvasを含むその他すべてのファイルでは、Obsidianは「最終更新優先」のアプローチを使用します。最も最近変更されたバージョンが以前のバージョンを置き換えます。
Obsidianの設定(プラグイン設定など)の競合では、Obsidian SyncはJSONファイルを統合します。ローカルJSONのキーをリモートJSONの上に適用します。
#### 競合の解決オプション
Obsidian 1.9.7以降では、競合の処理方法を選択できます。この設定を行うには:
1. **[[設定]]**を開きます。
2. サイドバーで**Sync**を選択します。
3. **[[Sync設定と選択的同期#競合の解決|競合の解決]]**で、希望のオプションを選択します:
- **自動で統合**(デフォルト):Obsidian Syncは異なるデバイスからのすべての変更を1つのファイルに結合します。すべての編集が保存されますが、テキストの重複やフォーマットの問題が発生する場合があります。これらは手動で修正する必要があります。
- **競合ファイルを作成**:Obsidianが競合する変更を検出した場合、自動統合の代わりに別の競合ファイルを作成します。両方のバージョンを確認し、自分で統合できます。これにより、最終結果を完全にコントロールできます。
> [!warning]+ すべてのデバイスで設定してください
> 競合の解決設定はデバイス固有です。各デバイスで希望のオプションを設定する必要があります。これにより、同期されたすべてのデバイスで同じ挙動が保証されます。
**競合ファイルの命名パターン**
「競合ファイルを作成」オプションを使用すると、Obsidianは以下の命名パターンで新しいファイルを作成します:
```
original-note-name (Conflicted copy device-name YYYYMMDDHHMM).md
```
たとえば、`Meeting notes.md`というノートで競合が発生した場合、競合ファイルは次のように命名されます:
```
Meeting notes (Conflicted copy MyMacBook2 202411281430).md
```
競合ファイルには、競合が検出されたデバイスからの変更が含まれます。元のファイルにはリモートバージョンが保持されます。両方のファイルを比較し、手動でコンテンツを統合できます。
> [!info]+ 同期ログを確認する
> 競合がいつ発生したかを確認するには、[[ステータスアイコンとメッセージ#同期アクティビティ|同期ログ]]を開きます。「Merge Conflicts」でフィルターするか、「Conflict」で検索してください。
### Syncが2台のデバイスで作成したノートを削除した
Obsidian Syncは通常、デバイス間の競合するノートを[[#競合の解決|統合]]して解決しようとします。ただし、起動時にノートを自動的に作成または変更するユーザーには問題が発生する可能性があります。これには[[デイリーノート]]や、コミュニティプラグイン[Templater](https://github.com/SilentVoid13/Templater)を使用する場合が含まれます。
あるデバイスでローカルにノートを作成し、数分以内にSyncがその同じノートのリモートバージョンをダウンロードすると、Syncは2つを統合せずにリモートバージョンを保持します。この場合、[[ファイルリカバリー]]を使用してローカルバージョンを復元できます。
### Syncがプラグインや設定のアップデートを同期しない
Obsidianは[[よくある質問#Obsidian Syncは設定をライブリロードしますか?|すべての設定をライブリロードするわけではありません]]。設定やプラグインを更新した後、変更を確認するには他のデバイスでObsidianを再起動する必要があります。モバイルデバイスでは、アプリを強制終了する必要がある場合があります。
> [!example]- テーマの変更
> - プライマリデバイス(通常はコンピュータ)で、テーマをカスタムテーマからデフォルトに戻します。
> - 同期ログで更新されたファイルがリモート保管庫に送信されたことを確認しますが、モバイルデバイスにはまだカスタムテーマが表示されます。
> - モバイルデバイスで同期ログを確認し、更新された`appearance.json`ファイルの受信を確認します。
> - モバイルデバイスでObsidianを再読み込みまたは再起動します。
> - 再読み込みまたは再起動後、モバイルデバイスはコンピュータと同じテーマを表示するはずです。
### ファイルを復元してもSyncからすぐに消えてしまう
この問題はWindowsで最もよく発生します。Windows Defenderがコードブロックを含むファイルを隔離する場合があり、特定のノートが消える原因となります。
もう一つのよくある原因は二重同期です。これはObsidian Syncが別の同期サービスと同時に動作している場合に発生します。
![[Obsidian Syncへの切り替え#保管庫をサードパーティの同期サービスまたはクラウドストレージから移動する]]
---
最後に、あるデバイスでファイルを復元しても、別のデバイスから削除される場合があります。これはファイル名に[[ステータスアイコンとメッセージ#スキップメッセージ|不正な文字]]が含まれている場合に発生します。
## Android
**Syncで受信した添付ファイルがデバイスで削除される**
この問題は、GoogleまたはAndroidフォトが添付ファイルを管理していることが原因と考えられます。Syncで受信したファイルがシステムによって変更されるのを防ぐには、Androidデバイスの[保管庫に`.nomedia`ファイルを追加](https://support.google.com/android/thread/60342076/what-are-these-nomedia-files?hl=en)してください。
> [!tip]- プラグインを使用する
> コミュニティプラグイン[Android Nomedia](https://community.obsidian.md/plugins/android-nomedia)を使うと簡単です。Androidスマートフォンにインストールしてください。`.nomedia`ファイルはObsidian Syncを通じてデバイス間で同期されないことに注意してください。