이 페이지에서는 [[Obsidian Sync 소개|Obsidian Sync]]에서 발생할 수 있는 드문 문제와 해결 방법을 안내해요. 진행하기 전에 [[상태 아이콘 및 메시지]]와 [[자주 묻는 질문]] 페이지를 먼저 확인하는 것을 권장해요.
## 일반
### 충돌 해결
충돌은 두 개 이상의 기기에서 동기화되기 전에 같은 파일을 변경할 때 발생해요. 예를 들어 컴퓨터에서 노트를 편집한 후, 해당 변경 사항이 업로드되기 전에 휴대폰에서도 같은 노트를 변경하는 경우예요.
충돌은 오프라인으로 작업할 때 더 자주 발생해요. 변경 사항이 많아지고 동기화 간격이 길어져 충돌 가능성이 높아져요.
#### Obsidian Sync의 충돌 처리 방식
Obsidian Sync가 충돌을 감지하면 파일 유형에 따라 결과가 달라져요:
- **Markdown 파일**: Obsidian Sync는 Google의 [diff-match-patch](https://github.com/google/diff-match-patch) 알고리즘을 사용하여 변경 사항을 병합해요.
- **기타 파일 유형**: 캔버스를 포함한 모든 다른 파일의 경우, Obsidian은 "마지막 수정 우선" 방식을 사용해요. 가장 최근에 수정된 버전이 이전 버전을 대체해요.
Obsidian 설정(플러그인 설정 등)의 충돌의 경우, Obsidian Sync는 JSON 파일을 병합해요. 로컬 JSON의 키를 원격 JSON 위에 적용해요.
#### 충돌 해결 옵션
Obsidian 1.9.7부터 충돌 처리 방식을 선택할 수 있어요. 이 설정을 구성하려면:
1. **[[설정]]**을 열어요.
2. 사이드바에서 **Sync**를 선택해요.
3. **[[동기화 설정 및 선택적 동기화#충돌 해결|충돌 해결]]**에서 원하는 옵션을 선택해요:
- **자동으로 병합** (기본값): Obsidian Sync가 여러 기기의 모든 변경 사항을 하나의 파일로 결합해요. 모든 편집 내용이 저장되지만, 때로는 중복 텍스트나 서식 문제가 발생할 수 있어요. 이러한 문제는 수동으로 수정해야 해요.
- **충돌 파일 생성**: Obsidian이 충돌하는 변경 사항을 발견하면 자동 병합 대신 별도의 충돌 파일을 생성해요. 두 버전을 모두 검토하고 직접 병합할 수 있어요. 이를 통해 최종 결과를 완전히 제어할 수 있어요.
> [!warning]+ 모든 기기에서 설정하기
> 충돌 해결 설정은 기기별로 적용돼요. 각 기기에서 원하는 옵션을 구성해야 해요. 이렇게 하면 동기화된 모든 기기에서 동일한 동작이 보장돼요.
**충돌 파일 명명 패턴**
"충돌 파일 생성" 옵션을 사용하면 Obsidian은 다음 명명 패턴으로 새 파일을 생성해요:
```
original-note-name.sync-conflict-YYYYMMDD-HHMMSS.md
```
예를 들어 `Meeting notes.md`라는 노트에서 충돌이 발생하면 충돌 파일의 이름은 다음과 같을 수 있어요:
```
Meeting notes.sync-conflict-20241128-143022.md
```
충돌 파일에는 충돌이 감지된 기기의 변경 사항이 포함돼요. 원본 파일은 원격 버전을 유지해요. 두 파일을 비교하고 수동으로 내용을 병합할 수 있어요.
> [!info]+ Sync 기록 확인
> 충돌이 언제 발생했는지 확인하려면 [[상태 아이콘 및 메시지#동기화 활동|Sync 기록]]을 열어요. "Merge Conflicts"로 필터링하거나 "Conflict"를 검색하세요.
### 두 기기에서 방금 만든 노트를 Sync가 삭제했습니다
Obsidian Sync는 일반적으로 기기 간 충돌하는 노트를 [[#충돌 해결|병합하여 충돌을 해결]]하려고 해요. 그러나 시작 시 자동으로 노트를 생성하거나 변경하는 사용자에게 문제가 발생할 수 있어요. 여기에는 [[일일 노트]]나 커뮤니티 플러그인 [Templater](https://github.com/SilentVoid13/Templater) 사용 시가 포함돼요.
한 기기에서 로컬로 노트를 생성한 후 몇 분 이내에 Sync가 동일한 노트의 원격 버전을 다운로드하면, Sync는 두 버전을 병합하지 않고 원격 버전을 유지해요. 이 경우 [[파일 복원]]을 사용하여 로컬 버전을 복구할 수 있어요.
### Sync가 플러그인 및 설정 업데이트를 동기화하지 않습니다
Obsidian은 [[자주 묻는 질문#Obsidian Sync는 설정을 실시간으로 다시 불러오나요?|모든 설정을 실시간으로 다시 불러오지 않아요]]. 설정이나 플러그인을 업데이트한 후 다른 기기에서 변경 사항을 보려면 Obsidian을 다시 시작해야 해요. 모바일 기기에서는 앱을 강제 종료해야 할 수도 있어요.
> [!example]- 테마 변경하기
> - 주 기기(보통 컴퓨터)에서 커스텀 테마에서 기본 테마로 변경해요.
> - Sync 기록에서 업데이트된 파일이 원격 보관함으로 전송되었음을 확인하지만, 모바일 기기에는 여전히 커스텀 테마가 표시돼요.
> - 모바일 기기에서 Sync 기록을 확인하여 업데이트된 `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://obsidian.md/ko/plugins?id=android-nomedia)를 사용하면 더 쉽게 할 수 있어요. Android 휴대폰에 설치하세요. `.nomedia` 파일은 Obsidian Sync를 통해 기기 간에 동기화되지 않아요.