협업 · 공유

프로젝트에 팀원을 초대하고, 역할/권한을 설정하며, ERD를 실시간으로 공유하는 방법을 안내합니다.

프로젝트와 워크스페이스 개념

프로젝트는 NeoSQL에서 협업의 기본 단위입니다. 하나의 프로젝트 안에 여러 ERD, DB 연결, 테이블 정의가 포함됩니다.

온라인 모드에서는 프로젝트를 생성하면 자동으로 워크스페이스(동기화 공간)가 만들어집니다. 같은 프로젝트에 참여한 팀원은 동일한 워크스페이스를 공유하며, 변경사항이 실시간으로 동기화됩니다.

개인 ERD

본인만 볼 수 있는 ERD입니다. 팀원에게 노출되지 않습니다.

팀 ERD

프로젝트 멤버 전원이 실시간으로 공유하는 ERD입니다. 변경사항이 자동으로 양방향 동기화됩니다.

Tip

오프라인 모드에서는 프로젝트 데이터가 로컬 .neosql/ 디렉토리에 저장되며, Git을 통해 팀원과 공유할 수 있습니다.

팀 만들기와 멤버 초대

프로젝트에 팀원을 초대하여 함께 작업합니다. 초대는 온라인 모드에서만 가능합니다.

공유 모달 열기

프로젝트 에디터 상단 툴바의 공유 버튼을 클릭하면 프로젝트 공유 모달이 열립니다.

공유 모달 열기

이메일 다중 초대

1

이메일 입력

초대할 팀원의 이메일을 입력합니다. 쉼표(,)로 구분하여 여러 명을 한 번에 초대할 수 있습니다.

2

역할 선택

부여할 역할(Manager, DBA, Member)을 선택합니다.

3

초대 전송

"Invite" 버튼을 클릭하면 초대 이메일이 발송됩니다.

공유 모달 열기

역할(Role)과 권한

프로젝트 멤버에게 4가지 역할을 부여할 수 있습니다. 각 역할에 따라 팀 관리 권한이 다릅니다.

역할팀원 초대역할 변경멤버 제거소유권 이전
OwnerManager, DBA, Member모든 멤버모든 멤버가능
ManagerDBA, MemberDBA, MemberDBA, Member불가
DBA불가불가불가불가
Member불가불가불가불가

소유권 이전 (Transfer Ownership)

Owner는 공유 모달의 멤버 목록에서 다른 멤버에게 소유권을 이전할 수 있습니다. 이전하면 기존 Owner는 Manager로 변경됩니다.

소유권 이전 (Transfer Ownership)

프로젝트 나가기

Owner가 아닌 멤버는 공유 모달 하단의 "프로젝트 나가기" 버튼으로 스스로 프로젝트를 떠날 수 있습니다.

프로젝트 나가기

역할별 권한 설정

Owner는 Setting → Role Permissions 탭에서 각 역할(Manager, DBA, Member)에 세부 권한을 부여할 수 있습니다.

역할별 권한 설정
권한설명
모든 권한Owner와 동등한 모든 권한을 부여합니다. 이 권한이 켜지면 아래 개별 권한은 자동으로 활성화됩니다.
공유 권한팀원을 프로젝트에 초대할 수 있습니다.
Connection 권한프로젝트의 DB 커넥션을 조회·추가·수정·삭제할 수 있습니다. 권한이 없으면 Connection 설정 화면의 모든 기능을 사용할 수 없습니다.
팀 ERD 삭제 권한팀 ERD를 삭제할 수 있습니다. 권한이 없으면 프로젝트 소유자만 팀 ERD를 삭제할 수 있습니다.
Watermark 강제ERD 인쇄 시 설정한 워터마크가 강제 적용됩니다.
DDL 제한테이블 생성·수정·삭제가 불가하며, Forward Engineering 시 직접 DDL을 실행할 수 없고 승인 요청을 보내야 합니다.

DDL Approver Role 선택

DDL 제한이 활성화되면 DDL 승인자 역할을 지정해야 합니다. 승인자로 지정된 역할의 멤버가 DDL 변경 요청을 검토·승인할 수 있습니다.

DDL Approver Role 선택

DDL 제한 해제 시 보류 변경 자동 폐기

DDL 제한을 해제하면 해당 역할 멤버의 대기 중인 DDL 승인 요청이 자동으로 폐기(취소)됩니다. 해제 전 경고 메시지가 표시됩니다.

DDL 제한 해제 시 보류 변경 자동 폐기

참고: DDL 제한이 활성화된 역할은 Connection 권한이 자동으로 비활성화됩니다.

초대 상태와 멤버 관리

공유 모달은 두 개의 목록으로 구성됩니다.

초대 상태와 멤버 관리

팀원 목록

초대를 수락하여 프로젝트에 참여한 멤버가 표시됩니다.

  • 각 멤버의 프로필, 이메일, 역할을 확인할 수 있습니다.
  • Owner 또는 Manager는 멤버의 역할을 변경하거나 프로젝트에서 제거할 수 있습니다.

대기중인 초대

초대를 보냈지만 아직 수락하지 않은 목록입니다. Owner에게만 표시됩니다.

  • 초대받은 사람이 수락하면 대기 목록에서 사라지고 팀원 목록에 나타납니다.
  • Owner가 초대를 취소하면 대기 목록에서 즉시 사라집니다.

플랜 다운그레이드 시 멤버 비활성화

구독 플랜이 다운그레이드되어 허용 멤버 수를 초과하면, Owner에게 멤버 정리 모달이 표시됩니다. Owner는 한도 내에서 활성 상태로 유지할 멤버를 선택해야 합니다. 선택되지 않은 멤버는 비활성화 상태가 됩니다.

비활성 멤버 활성화

비활성화된 멤버는 멤버 목록에 "Disabled" 배지로 표시됩니다. 플랜 한도에 여유가 있으면 Owner가 잠금 해제 아이콘을 클릭하여 다시 활성화할 수 있습니다.

비활성 멤버 활성화

실시간 동기화

온라인 모드에서는 저장된 변경사항이 팀원에게 실시간으로 자동 동기화됩니다.

실시간 동기화

동기화 대상

데이터동기화 방식
테이블 정의 (컬럼, PK, FK, 인덱스)실시간 양방향
팀 ERD 다이어그램실시간 양방향
Entity 매핑 / 네이밍 변환 설정실시간 양방향
사용자 환경설정 (뷰포트, 탭)실시간 양방향
DB 연결 정보 / 프로젝트 메타즉시 반영
멤버 / 초대 정보즉시 반영

동기화 동작

  • 자동 동기화: 프로젝트를 열면 초기 동기화가 실행되고, 이후 저장된 변경사항이 자동으로 양방향 동기화됩니다.
  • 멀티 탭 지원: 같은 브라우저에서 여러 탭을 열어 작업할 수 있습니다.
  • 오프라인 변경 보존: 네트워크가 끊기더라도 로컬에 데이터가 유지됩니다. 네트워크 복구 시 자동으로 동기화가 재개됩니다.
  • 충돌 처리: 동시 편집으로 충돌이 발생하면 최신 변경이 우선 반영됩니다.

개인 ERD와 팀 ERD

온라인 모드에서 ERD는 개인 ERD팀 ERD 두 가지로 구분됩니다. 각각의 동작 방식이 다르므로 차이점을 이해하는 것이 중요합니다.

개인 ERD와 팀 ERD 비교

구분개인 ERD팀 ERD
공개 범위본인만 볼 수 있음프로젝트 멤버 전원이 볼 수 있음 (가입 시점과 무관)
실시간 동기화없음 (본인 전용)멤버 간 양방향 실시간 동기화
갤러리 공유가능 (전체 공개 / 게시 중지)불가
삭제 권한본인이 자유롭게 삭제 가능프로젝트 소유자(Owner), 또는 모든 권한 / 팀 ERD 삭제 권한을 가진 멤버만 삭제 가능

개인 → 팀 전환

개인 ERD의 정보 패널에서 "더보기 > 팀 공유 및 협업 시작" 메뉴를 클릭하면 해당 ERD가 팀 ERD로 전환됩니다. 전환 즉시 프로젝트 멤버 전원에게 실시간으로 공유됩니다.

주의: 팀 ERD로 전환하면 다시 개인 ERD로 되돌릴 수 없습니다. 대신 "내 ERD로 복사"로 사본을 만들 수 있습니다.

개인 → 팀 전환

팀 → 개인 복사

팀 ERD의 정보 패널에서 "더보기 > 내 ERD로 복사" 메뉴를 클릭하면 현재 ERD의 사본이 개인 ERD로 생성됩니다. 원본 팀 ERD는 그대로 유지되며, 복사된 개인 ERD는 독립적으로 관리됩니다.

팀 → 개인 복사

DDL 승인 프로세스

프로젝트 설정에서 DDL 제한이 활성화된 역할의 멤버는 Forward Engineering(DDL 반영) 시 직접 실행 대신 승인 요청을 보내야 합니다.

DDL 승인 프로세스

변경 요청 작성

1

DDL 미리보기

Forward Engineering 실행 시 DDL 제한이 적용된 멤버에게는 승인 요청 모달이 표시됩니다. 생성될 DDL 문을 미리 확인할 수 있습니다.

DDL 미리보기
2

반영 사유 입력

변경 사유를 작성합니다. (필수, 최대 500자)

반영 사유 입력
3

요청 전송

"Submit"을 클릭하면 승인자에게 요청이 전달됩니다.

대기 목록

에디터 우측의 DDL 승인 관리 패널에서 요청 상태를 확인합니다.

  • 대기 중 (Pending) 탭: 아직 처리되지 않은 요청 목록
  • 처리 완료 (Completed) 탭: 승인/거부/취소된 요청 이력
대기 목록

요청자는 대기 중인 요청을 직접 철회할 수 있습니다.

요청자는 대기 중인 요청을 직접 <strong>철회</strong>할 수 있습니다.

승인자 검토

승인 권한이 있는 멤버가 요청을 클릭하면 검토 모달이 열립니다.

  • 요청 정보 (요청자, 일시, ERD, 사유)를 확인합니다.
  • DDL을 직접 편집할 수 있습니다 (승인 전 수정 가능).
  • 검토 메시지를 남길 수 있습니다.
승인자 검토

승인 / 거부 / 이력 추적

승인 / 거부 / 이력 추적
액션동작
승인 및 실행DDL을 DB에 즉시 실행한 후 요청을 승인 상태로 변경합니다. DDL 실행이 실패하면 승인 처리되지 않습니다.
거부요청을 거부합니다. 요청자에게 거부 사유가 전달됩니다.
DDL 복사DDL 내용을 클립보드에 복사합니다.

처리된 요청은 "처리 완료" 탭에서 승인자, 처리 일시, 실행된 쿼리, 메시지를 확인할 수 있습니다.

참고: DDL 승인 요청이 대기 중인 ERD는 삭제할 수 없습니다.

승인 / 거부 / 이력 추적

Git 기반 ERD 공유 (오프라인 모드)

오프라인 모드에서는 프로젝트 데이터가 로컬 .neosql/ 디렉토리에 JSON 파일로 저장됩니다. 이 디렉토리를 Git으로 관리하면 팀원과 ERD를 공유할 수 있습니다.

.neosql/ 커밋 워크플로우

1

프로젝트 디렉토리에서 작업

오프라인 모드로 프로젝트를 열고 ERD를 편집합니다. 변경사항은 자동으로 .neosql/ 디렉토리에 저장됩니다.

2

Git 커밋 및 푸시

.neosql/ 디렉토리의 변경사항을 Git에 커밋하고 푸시합니다.

3

팀원이 Pull 후 Import

팀원이 저장소를 Pull한 후 NeoSQL에서 "Import Project"로 해당 디렉토리를 가져오면 동일한 ERD를 확인할 수 있습니다.

비밀번호 / SSH 키 제외 보장

DB 연결 비밀번호와 SSH 키 등 민감 정보는 .neosql/ 디렉토리에 저장되지 않습니다. 각 팀원이 자신의 환경에서 별도로 연결 정보를 설정해야 합니다.

Tip

소스코드 프로젝트의 루트에 .neosql/ 디렉토리를 포함하면, 코드와 ERD를 동일한 Git 저장소에서 함께 버전 관리할 수 있습니다.