콘텐츠로 이동

프로젝트와 .restorm 파일

Restorm 프로젝트는 사용자의 디스크 위에 존재합니다. 원격 작업 공간도, 독자적인 동기화 방식도 없습니다. 파일을 열고, 저장하고, 커밋하면 됩니다.

기본 모드입니다(파일 ▸ 새로 만들기다른 이름으로 저장). 프로젝트 전체가 하나의 파일에 담기며, 기본 형식은 YAML입니다. 다른 두 가지 직렬화 형식도 사용할 수 있습니다. jsonjson5 입니다.

파일 ▸ 폴더 열기입니다. 프로젝트가 디스크 위에서 트리 형태로 펼쳐지므로, 큰 프로젝트에서 훨씬 세밀한 차이를 얻을 수 있습니다.

  • 루트에 설정 파일 restorm.conf 가 놓이며, 여기에는 형식만 담깁니다 (format: yaml | json | json5).
  • 디렉터리마다 인덱스 파일이 하나씩 놓입니다(index.yaml, index.json 등).
  • 폴더와 파일은 <index> - <name> 형태로 이름이 붙습니다. 인덱스는 형제 항목 개수의 자릿수만큼 0으로 채워지므로, 화면에서의 순서가 곧 디스크 위의 순서가 됩니다. 사용할 수 없는 문자(<>:"/\|?*)는 _ 로 바뀌고 이름은 100 자에서 잘립니다.

폴더 모드에서 Ctrl+S 는 활성 탭의 하위 트리만 기록합니다. Ctrl+Shift+S(모두 저장)는 전체를 기록합니다.

폴더 모드로 열린 프로젝트. 왼쪽 트리가 폴더 계층을 그대로 반영하고, 상태 바가 .restorm 파일이 아니라 폴더를 가리키고 있음

  • 트리: 폴더, 변수 폴더, 모든 프로토콜의 요청, 시나리오
  • 환경과 그 변수, 하위 환경까지 포함
  • 사용자 지정 값 목록과 가져온 열거형
  • 태그와 그 색상
  • 변수 폴더에 붙은 API 문서
  • “프로젝트에” 저장한 빠른 설정
  • 프로젝트 식별자(_projectUuid)와 형식 버전

파일을 공유할 수 있게 하려고 일부러 제외한 것들입니다.

데이터저장되는 곳
비밀 값프로젝트 옆에 놓인 비밀 값 .env 파일 — 비밀 값 참고
응답 기록프로젝트 옆에 놓인 <project>.responses.zip 아카이브
“사용자” 빠른 설정로컬 설정
즐겨찾기애플리케이션의 로컬 저장소, 프로젝트 식별자로 색인
workbench 배치로컬 설정, 프로젝트별로 색인
작업 공간 설정<project-folder>/.restorm/settings.json

실질적인 결과는 이렇습니다. 토큰을 유출하지 않고 .restorm 을 커밋할 수 있으며, 동료가 사용자의 탭 배치를 받아 보는 일도 없습니다.

버전 관리를 실제로 쓸 만하게 만들기 위해서만 존재하는 두 가지 보장이 있습니다.

  1. 정규화된 키 순서. 식별용 키가 앞에 오고(id, name, key, type, folderType, method, url), 나머지는 정렬됩니다. 반면 배열의 순서는 결코 바뀌지 않습니다. 그것은 사용자가 정한 순서입니다.
  2. 안정적으로 파생되는 식별자. 엔티티의 식별자는 무작위로 뽑히지 않고 의미상의 경로에서 계산됩니다. 두 사람이 같은 위치에 같은 요청을 추가하면 동일한 식별자가 만들어지므로, 병합이 엔티티를 올바르게 짝지을 수 있습니다.

그 결과 프로젝트를 열고 아무것도 바꾸지 않은 채 다시 저장해도 차이가 전혀 생기지 않습니다. 내장 git을 참고하십시오.

파일 ▸ 최근 파일은 최근에 연 프로젝트 10 개를 나열하며, 더 이상 유효하지 않은 경로는 자동으로 제거됩니다. 같은 목록이 시작 화면에도 표시됩니다.