--- type: ideas tags: [ideas, infrastructure, nas, collaboration, shared-editing, 23server, 24server] adopted_by: --- # 260323 23·24서버 NAS 공유 편집 협업 공간 아이디어 ## 문제 - 23·24서버가 동시에 문서(MD)를 작성할 때 git pull/push가 필수 - 특히 문서 작업에서 풀/푸시 사이클이 속도를 떨어뜨리고 충돌을 만듦 - 자유롭게 편집·토의·삭제할 수 있는 비정형 공간이 없음 ## 제안 NAS(`/mnt/nas`)에 공유 편집 폴더를 만들어 23·24 양쪽에서 풀/푸시 없이 바로 읽고 쓰는 협업 공간을 둔다. ``` /mnt/nas/workspace/shared-editing/ ├── drafts/ # 자유 작성·토의·임시 메모 ├── reviews/ # 상호 리뷰·코멘트 └── archive/ # 확정 후 git으로 이관된 문서 보관 ``` - **drafts**: 아무나 자유롭게 쓰고 지우고 수정. git 미관리. - **reviews**: 리뷰 요청·코멘트. 파일명에 `[23]`, `[24]` 접두로 작성자 구분. - **archive**: git에 커밋된 문서의 원본 보관. 읽기 참조용. ## 충돌 관리 ### NAS(CIFS) 파일 충돌의 현실 - CIFS 마운트는 **파일 단위 잠금(lock)**을 지원하지만, 두 서버가 동시에 같은 파일을 열면 마지막 저장이 이김 (last-write-wins) - 실시간 공동 편집(Google Docs 수준)은 불가능 ### 충돌 방지 규칙 | 규칙 | 설명 | |------|------| | **파일명 분리** | 같은 주제라도 `[23]_주제.md`, `[24]_주제.md`로 각자 파일 작성. 합칠 때 한쪽이 병합 | | **섹션 분리** | 한 파일 안에서 `## 23서버 의견`, `## 24서버 의견`으로 섹션을 나눠 쓰면 충돌 최소화 | | **잠금 컨벤션** | 편집 중이면 파일명 끝에 `.editing-23` 또는 `.editing-24` 빈 파일 생성. 끝나면 삭제 | | **확정 시 git 이관** | drafts에서 합의된 문서는 git 레포로 커밋. drafts 원본은 archive로 이동 | ### 충돌 발생 시 1. 양쪽 버전을 `[23]_파일명.md`, `[24]_파일명.md`로 분리 2. 한쪽이 diff 확인 후 병합 3. 병합본을 정본으로, 분리본은 삭제 ## 기대 효과 - 문서 토의·초안 작성에서 git 사이클 제거 → 속도 향상 - 에이전트 간 실시간에 가까운 의견 교환 (파일 기반) - 확정 전 자유로운 편집·삭제 → 정식 문서의 품질 향상 ## 제약 - 실시간 공동 편집 불가 (CIFS 한계) - last-write-wins 위험 → 파일명/섹션 분리 규칙 필수 - NAS 마운트 불안정 시 양쪽 모두 접근 불가 - 코드는 여전히 git 관리 (이 공간은 문서·토의 전용) ## 관련 인프라 - NAS IP: `192.168.0.101` - 23서버 마운트: `/mnt/nas` (CIFS) - 24서버 마운트: `/mnt/nas` (CIFS) - 양쪽 이미 마운트 확인 완료 (260322)