클라우드 동기화 및 버전 관리
Rephlo는 여러분의 Command를 동시에 두 곳에 보관할 수 있습니다: 컴퓨터의 앱 안, 그리고 클라우드의 계정 안. 클라우드 동기화는 Command를 온라인 갤러리에 게시하여 다른 기기에서 재사용하거나, 공유하거나, 나중에 복구할 수 있게 해줍니다. Command가 한 번 동기화되면 Rephlo는 로컬 사본과 클라우드 사본을 조용히 일치시켜 나갑니다.
이 페이지에서는 게시가 어떻게 작동하는지, 동기화 상태 레이블이 무엇을 의미하는지, Rephlo가 충돌을 어떻게 처리하는지, 그리고 백그라운드 동기화가 어떻게 최신 상태를 유지하는지 설명합니다.
Command를 클라우드에 게시하기
Command를 게시하면 Rephlo는 이를 여러분 계정의 온라인 갤러리로 전송하고, 서버는 여기에 영구적인 ID와 버전 번호를 부여합니다. 선택적으로 무엇이 바뀌었는지 설명하는 짧은 변경 로그(changelog) 메모를 포함할 수 있습니다.
- 첫 게시는 새로운 갤러리 항목을 만들고 온라인 ID와 버전을 로컬 Command에 기록합니다.
- 같은 Command를 이후에 게시하면 업데이트가 푸시되고 서버의 버전 번호가 올라갑니다.
- 게시하려면 로그인되어 있어야 합니다. 세션이 만료된 경우 Rephlo는 다시 로그인하도록 요청하며 로컬 사본은 그대로 둡니다.
ID나 버전을 직접 추적할 필요가 없습니다 — 게시가 성공하면 Rephlo가 자동으로 Command에 이를 기록합니다.
동기화 상태 이해하기
모든 Command는 클라우드 사본 대비 현재 상태를 알려주는 동기화 상태를 추적합니다.
| 상태 | 의미 |
|---|---|
| None | Command가 한 번도 동기화된 적이 없습니다. 이 컴퓨터에만 존재합니다. |
| Synced | 로컬 사본이 서버가 확인한 최신 버전과 일치합니다. 대기 중인 항목이 없습니다. |
| Dirty | Command에 서버로 아직 푸시되지 않은 로컬 변경 사항(또는 실패한 게시)이 있습니다. |
| Conflict | 로컬 사본과 클라우드 사본이 각각 독립적으로 변경되었습니다. 동기화를 계속하기 전에 확인이 필요합니다. |
동기화된 Command를 편집하면, 다음 게시가 성공하여 다시 Synced로 돌아갈 때까지 Dirty 상태가 됩니다.
동기화 실패 시 발생하는 일
Rephlo는 여러분의 작업을 절대 잃지 않도록 의도적으로 신중하게 동작합니다:
- 유효성 검사 문제(예: 서버가 거부하는 필드)는 Command를 Dirty로 표시하고 구체적인 오류를 보여주어, 수정 후 다시 시도할 수 있게 합니 다.
- 서버 또는 네트워크 오류도 Command를 Dirty로 표시하며 Rephlo는 다음 동기화 주기에 다시 시도합니다.
- 로그인 문제는 로컬 동기화 상태를 절대 변경하지 않습니다 — 다시 인증한 후 재시도하면 됩니다.
- 앱이 이전 ID를 기억하고 있는 동안 Command가 온라인 갤러리에서 삭제된 경우, 다음 게시 시 이를 감지하고 새로운 클라우드 사본을 자동으로 다시 만듭니다.
일괄 "Sync All"
여러 Command가 Dirty 상태라면, 하나씩 수동으로 게시하는 대신 한 번의 작업으로 모두 동기화할 수 있습니다. Rephlo는 이 작업을 최적화하여 빠르게 유지하면서도 서버의 속도 제한 내에서 동작하도록 합니다.
충돌 처리 및 백그라운드 풀(pull)
백그라운드에서 Rephlo는 주기적으로 클라우드에서 Command를 가져와 온라인 ID를 기준으로 각각을 로컬 사본과 비교합니다. 첫 번째 풀은 앱이 시작된 직후 실행되며, 이후 정기적인 주기로 반복됩니다.
각 풀에서 일어나는 일은 클라우드 사본이 더 최신인지, 그리고 로컬 사본에 저장되지 않은 변경 사항이 있는지에 따라 달라집니다:
핵심 사항:
- 클라우드가 더 최신이 아님 → 변경 없음. Rephlo는 설치 수와 평균 평점 같은 온라인 통계만 새로 고칩니다.
- 클라우드가 더 최신이고 로컬이 클린함 → Rephlo가 로컬 사본을 업데이트하고 Synced로 표시합니다.
- 클라우드가 더 최신이고 로컬이 Dirty임 → Rephlo는 여러분의 편집 내용을 덮어쓰는 대신 Command를 Conflict로 표시합니다.
- 백그라운드 풀은 스스로 완전히 새로운 로컬 Command를 만들지 않습니다 — 이미 가지고 있는 Command를 조정할 뿐입니다.
Command가 Conflict 상태가 되면, 어떤 버전을 유지할지 결정한 다음, 그 선택을 클라우드에 반영하려면 다시 게시하세요(또는 로컬 편집 내용을 버리고 클라우드 사본이 우선하도록 둘 수도 있습니다).
워크스페이스(조직) 전환하기
둘 이상의 워크스페이스에 속해 있으면서 그 사이를 전환하는 경우, Rephlo는 다른 워크스페이스로 동기화된 Command를 덮어쓰지 않습니다. 대신 활성 워크스페이스에 새로운 사본을 게시하고 다른 워크스페이스의 사본은 그대로 둡니다. 이렇게 하면 각 워크스페이스의 갤러리가 깨끗하게 유지되고, 더 이상 볼 수 없는 콘텐츠를 훼손하는 일을 방지합니다.